我正在比较两个容器时间。一个构建在我的本地机器上,另一个构建在Jenkins服务器上。
我附加了他们两个并尝试了这些命令:
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
shell。结果相同:
Locally running container: '2017-05-27 10:59:40.005836'
Container running on Jenkins server: '2017-05-27 10:59:35.567902'
Django shell中的 第三:datetime.now()
(./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
,在撰写本文时,这是正确的时间。
詹金斯的那个错了,看起来好像忽略了Django设定的时区。
我不明白为什么。感谢您的帮助
答案 0 :(得分:1)
解决方案只是安装tzdata
。事实证明基本图像没有它。
此软件包提供时区和夏令时数据。
因此,只需将以下内容添加到Dockerfile即可解决问题:
RUN apt-get install tzdata