Docker 修改容器内的时区


 

今天利用docker发布服务,发现 程序用获取的系统时间比正常时间晚了8个小时

 

进入容器 docker exec -it /bin/sh

查询时间 date -R

发现时区为0时区

 

----------------------------------------------------------------------------------

解决思路

 1.复制相应的时区文件,替换系统时区文件;

cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

发现创建镜像时依赖的基础镜像 运行的容器没有这两个文件

2. 创建文件夹

mkdir -p /usr/share/zoneinfo/Asia

3.回到宿主机           复制 宿主机里的文件到容器中

docker cp /usr/share/zoneinfo/Asia/Shanghai 容器ID或容器名:/usr/share/zoneinfo/Asia

4. 进入容器

docker exec -it 容器Id或容器名

执行命令 cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

5. 重启容器

 


免责声明!

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



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