[关闭]
@zwh8800 2016-04-23T20:19:46.000000Z 字数 528 阅读 331361

docker 中设置时区

blog docker


昨天使用 docker 时遇到一个问题,应用输出的时间永远是utc时间,一开始我检查了服务器的时区,发现没问题。然后我就以为是代码中的bug,寻找了很久bug后突然想起docker中的时区应该和宿主机不一致。修改了一下果然好了。


修改docker镜像时区的方法和修改普通Linux系统时区的方法一致。具体方法要看使用的是什么发行版。

比如我使用的alpine方法如下:

  1. apk add tzdata
  2. ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
  3. echo "Asia/Shanghai" > /etc/timezone

写到Dockerfile里就是:

  1. RUN apk update && apk add ca-certificates && \
  2. apk add tzdata && \
  3. ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && \
  4. echo "Asia/Shanghai" > /etc/timezone

update:

在ubuntu中,设置好时区之后需要执行一下

  1. dpkg-reconfigure -f noninteractive tzdata

否则不会生效

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注