原文:Docker时区timezone问题
Linux时间类型
- 在Unix类的机器下的
/usr/share/zoneinfo/
文件内为所有代码调用的ZONEINFO
的数据位置,想查看设置哪个时区时,直接去里边看名字即可。
docker时间、时区问题
docker容器内默认为utc时间
docker-compose启动时的设置:
设置容器内为宿主机时间:
volumes: - /etc/localtime:/etc/localtime:ro - /etc/timezone:/etc/timezone:ro # 这个只在Linux上有 # “ro”的意思是只读(read-only)模式,可以保证其挂载卷不被 Docker 容器内部文件系统配置所覆盖 # 通过环境变量设置时区 environment: - TZ=Asia/Shanghai # 设置容器时区为CST 12345678
dockerfile进行镜像设置生成
RUN echo "Asia/Shanghai" > /etc/timezone RUN dpkg-reconfigure -f noninteractive tzdata # 已上是 Ubuntu 修改时区的命令。 # Docker 默认使用 Ubuntu系统。 # 如果你的自定义镜像使用的是其他发行版,那么这里的命令也要改变 123456
容器启动时直接设置
docker run -v /etc/localtime:/etc/localtime <IMAGE:TAG> 1
来源:https://www.cnblogs.com/lonelyxmas/p/12348302.html