![](/img/trans.png)
[英]Running ASP.NET 4.6 application inside a docker container - Site always 404s
[英]Why is my docker container's timestamp wrong when running an ASP.NET Framework 4.7 application?
我有一個非常簡單的ASP.NET v4.7 Web應用程序,該應用程序在本地開發筆記本電腦上的docker容器中運行。
Web應用程序嘗試連接到DocumentDb,但這失敗了,因為容器的時間戳是完全錯誤的,因此Jwt令牌驗證自然會失敗。 確切的ASP.NET代碼並不重要。 這更多地說明了為什么Docker容器的時間戳與主機不同。
請注意,我正在使用Windows容器。 我的dockerFile如下所示:
FROM microsoft/aspnet:4.7.2-windowsservercore-1803
ARG source
WORKDIR /inetpub/wwwroot
COPY ${source:-obj/Docker/publish} .
當我連接到容器並運行“時間”時,得到以下信息:
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
碼頭工人在哪里得到那個瘋狂的時間戳? 有沒有一種在啟動時與主機同步的方法?
我的筆記本電腦的操作系統版本是:Win 10,v1803(內部版本17134.471)我正在運行:Docker for Windows CE v2.0.0.0-win81(29211)和Docker Engine版本18.09.0
不幸的是,到目前為止唯一的解決方案是“等待並使其腌制”,如http://github.com/Microsoft/aspnet-docker/issues/120中指出的那樣
感謝@ikkentim指出問題。
我懷疑我的容器也許無法訪問互聯網並且無法同步其時鍾,但由於今天早上才開始正常工作,因此無法對其進行驗證。
如果找到比“等待”更有用的解決方案,我將發布更好的答案。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.