2017-05-27 86 views
1

我在比較兩個容器時間。一個構建在我的本地機器上,另一個構建在Jenkins服務器上。Jenkins構建的Django應用程序的Docker容器錯誤時間

我連接到他們與嘗試這些命令:

首先:Linux的date功能。同樣的結果:

Locally running container: Sat May 27 10:47:06 UTC 2017 

Container running on Jenkins server: Sat May 27 10:47:28 UTC 2017 

python外殼。相同的結果:

Locally running container: '2017-05-27 10:59:40.005836' 

Container running on Jenkins server: '2017-05-27 10:59:35.567902' 

第三datetime.now()在Django殼(./manage.py shell)。不同的結果:

Locally running container: '2017-05-27 06:01:52.547923' 

Container running on Jenkins server: '2017-05-27 11:01:17.001070' 

本地運行的容器是因爲在我的Django應用程序正確的,我的時區設置爲America/Chicago並在寫這篇文章的時候,這是正確的時間。

Jenkins中的一個錯誤,看起來好像忽略了Django設置的時區。

我不明白爲什麼。感謝您的幫助

+1

嘗試設置在Dockerfile:'ENV TZ =美國/ Chicago' – Robert

+0

http://www.gnu.org/software/libc /manual/html_node/TZ-Variable.html –

回答

0

解決方案只是安裝tzdata。原來基礎圖像沒有。

該軟件包提供時區和夏令時數據。

所以,只需添加以下到Dockerfile解決問題:

RUN apt-get install tzdata 
相關問題