Jenkins构建的Django应用程序的Docker容器错误时间
问题描述:
我在比较两个容器时间。一个构建在我的本地机器上,另一个构建在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设置的时区。
我不明白为什么。感谢您的帮助
答
解决方案只是安装tzdata
。原来基础图像没有。
该软件包提供时区和夏令时数据。
所以,只需添加以下到Dockerfile解决问题:
RUN apt-get install tzdata
尝试设置在Dockerfile:'ENV TZ =美国/ Chicago' – Robert
http://www.gnu.org/software/libc /manual/html_node/TZ-Variable.html –