Docker 中如何设置 container 的时区
文章目录
Docker Store 上的官方镜像基本上都默认是 UTC 时区,需要我们手动设置一下。
Dockerfile
如果你使用 Dockerfile 制作自己的镜像,那么只需要在 Dockerfile 中加入下面两句就可以了 :
ENV TZ=Asia/Shanghai RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
修改成功。以后这个镜像生成的 container 就都是北京时间了。
同步主机时区
利用 volume 可以在启动一个 container 时指定使用主机的时区文件,就可以把 container 的时区与主机同步
docker run -v /etc/localtime:/etc/localtime IMAGE:TAG
运行中的 container
如果你不想新建镜像或者重启 container,那么也可以直接进入 container 修改。执行 :
docker exec -it container_name_or_id bash
进入 container 之后执行:
echo “Asia/Shanghai” > /etc/timezone dpkg-reconfigure -f noninteractive tzdata
注意,此处仍然需要注意不同发行版命令的差别。
文章作者 honour
上次更新 2018-06-22