在我运行的所有 docker 容器中,容器的系统时间都设置为 UTC,而在我的主机(debian)上则是 CEST。
为什么它们不能自动同步?我如何让它们在启动时设置正确的时间?
root@v2201510680628925:/home/jacob# docker version
Client:
Version: 1.11.2
API version: 1.23
Go version: go1.5.4
Git commit: b9f10c9
Built: Wed Jun 1 21:36:47 2016
OS/Arch: linux/amd64
Server:
Version: 1.11.2
API version: 1.23
Go version: go1.5.4
Git commit: b9f10c9
Built: Wed Jun 1 21:36:47 2016
OS/Arch: linux/amd64
root@v2201510680628925:/home/jacob# date
Wed Aug 2 09:59:20 CEST 2017
root@v2201510680628925:/home/jacob# docker exec -it naos_nginx bash
root@0cefa7f7096c:/# date
Wed Aug 2 07:59:34 UTC 2017
root@0cefa7f7096c:/# exit
exit
root@v2201510680628925:/home/jacob# docker exec -it ah_avail bash
root@da52e8f3f61f:/usr/src/app# date
Wed Aug 2 07:59:59 UTC 2017
root@da52e8f3f61f:/usr/src/app# exit
exit
root@v2201510680628925:/home/jacob#
答案1
您应该能够使用 tzdata 在容器中设置时区:
docker run -e TZ=Europe/Amsterdam debian:jessie date
“为什么容器不与主机同步时间”的致谢和进一步解释:Docker 容器时间和时区(不会反映变化)