容器的时间跟主机的时间的保持一致的,不过它的时区是用UTC,并不是本地的时区。

有三种方式可以修改容器的时区:

1、读取本地的时区配置文件

命令行
$ docker run -v /etc/localtime:/etc/localtime:ro
docker compose
    volumes:
     - /etc/localtime:/etc/localtime:ro

2、设置环境变量

命令行
$ docker run -env TZ=Asia/Shanghai
docker compose
    environment:
     - TZ=Asia/Shanghai

3、合并1跟2的配置

之前遇到tomcat容器,容器时区已经改变了,java应用的时区还不变。所以一般两种方式一起做。

命令行
$ docker run -v /etc/localtime:/etc/localtime:ro --env TZ=Asia/Shanghai
docker compose
    volumes:
     - /etc/localtime:/etc/localtime:ro
    environment:
     - TZ=Asia/Shanghai

版权声明:如无特别声明,本文版权归 一年四季 所有,转载请注明本文链接。

(采用 CC BY-NC-SA 4.0 许可协议进行授权)

本文标题:《 修改Docker的时区为本地时间 》

本文链接:https://www.yucanlin.cn/develop/%E4%BF%AE%E6%94%B9Docker%E6%97%B6%E5%8C%BA%E4%B8%BA%E6%9C%AC%E5%9C%B0%E6%97%B6%E9%97%B4.html