Docker 解决容器时间与主机时间不一致的问题三种解决方案


Docker容器时间与主机时间不一致

查看主机时间: date

 查看docker容器时间  docker   exec  容器名/容器id  date

  可以发现,他们相隔了8小时。
CST应该是指(China Shanghai Time,东八区时间)
UTC应该是指(Coordinated Universal Time,标准时间)

所以,这2个时间实际上应该相差8个小时。(bluer: 所以没有设置过的容器, 一般跟宿主机时间相差8h)
所以,必须统一两者的时区。

共享主机的localtime  (方法一)

创建容器的时候指定启动参数,挂载localtime文件到容器内  ,保证两者所采用的时区是一致的。

docker run --name <name> -v /etc/localtime:/etc/localtime:ro ....

 复制主机的localtime  (方法二)

docker cp /etc/localtime [containerId]:/etc/localtime

创建自定义的dockerfile  (方法三)

RUN /bin/cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime \
&& echo 'Asia/Shanghai' >/etc/timezone \


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM