无论如何尝试,我都无法将主机的时区传播到容器。
请指教:
$:~/$ cat /etc/timezone
Asia/Jerusalem
$:~/$ date
Sun Feb 2 13:50:02 IST 2020 # TIME ON HOST (correct)
$:~/$ docker run --rm -v /etc/timezone:/etc/timezone:ro -v
/etc/localtime:/etc/localtime:ro -e TZ=`cat /etc/timezone` ubuntu date
Sun Feb 2 11:50:08 Asia 2020 # TIME ON THE CONTAINER (wrong)
如您所见,容器的时区是错误的,时间始终是UTC。
最佳答案
看来-e TZ = cat /etc/timezone
选项实际上破坏了事情。我刚刚删除了此参数,它现在运行良好:
docker run --rm -v /etc/timezone:/etc/timezone:ro -v /etc/localtime:/etc/localtime:ro ubuntu date
注意:它适用于 ubuntu 和 Alpine 容器。对于 busybox ,它仍然不是。
关于docker - Docker容器时区未传播,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60025831/