我有一个非常简单的asp.net v4.7web应用程序,它运行在本地开发笔记本电脑上的docker容器中。
web应用程序试图连接到documentdb,但这失败了,因为容器的时间戳完全错误,所以jwt令牌验证自然失败。确切的asp.net代码并不重要;这更多的是关于Docker容器的时间戳与主机不同的原因。
注意,我使用的是windows容器。我的档案如下:
FROM microsoft/aspnet:4.7.2-windowsservercore-1803
ARG source
WORKDIR /inetpub/wwwroot
COPY ${source:-obj/Docker/publish} .
当我连接到容器并运行“time”时,会得到以下结果:
docker container exec -it <containerId> cmd
c:\>time
The current time is: 0:29:49.87
c:\>tzutil /g
South Africa Standard Time
当我在主机上,我的笔记本电脑上执行此操作时,我会得到:
C:\>time
The current time is: 15:42:45.72
Enter the new time:
C:\>tzutil /g
South Africa Standard Time
Docker从哪里得到那个疯狂的时间戳?启动时是否有与主机同步的方法?
我的笔记本电脑的操作系统版本是:win 10 v1803(内部版本17134.471)
我正在运行:Docker for Windows CE v2.0.0-Win81(29211),Docker引擎版本18.09.0