Linux时区与Docker不一致问题

早上到公司发现定时任务应该产生的文件在服务器上没有出现

排查发现服务器时区与Docker内时区不一致,服务器时区为Asia/Shanghai,Docker内时区为UTC

应用为docker compose方式启动

解决方案如下:

  • 设置Linux服务器为上海时区(如已是,跳过此步)
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
复制代码
  • 在/etc目录中增加timezone文件(如已有,跳过此步)
echo 'Asia/Shanghai' > /etc/timezone
复制代码
  • 修改docker-compose.yml文件,在时区不一致的容器中增加以下配置
    volumes:
        - /etc/localtime:/etc/localtime
        - /etc/timezone:/etc/timezone
复制代码
  • 重启docker容器

此时发现日志时间与容器内时间均已正常。

 

Linux CentOS 7.6.1810


作者:Apolloflora
链接:https://juejin.cn/post/7047376633675186190
来源:稀土掘金
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

posted @ 2022-03-08 14:30  Apolloflora  阅读(406)  评论(0)    收藏  举报