修改docker容器内时区

通过Dockerfile或者docker-compose创建容器后,有时候忘记时区问题,查看容器日志时,发现时区不对,需要修改,这时候不可能再重新构建容器,只能手动修改容器内时区,修改容器内时区也比较简单。

首先我们知道在Liux系统中,在/usr/share/zoneinfo/Asia 此处对应东八区时间,目录中存放着时区文件,/etc/localtime 中存放着配置文件,我们只需要将宿主机的/usr/share/zoneinfo/Asia/Shanghai 文件通过软链接或者直接复制到容器内部。建议直接复制到容器内部,因为好多容器应用的是base系统,内部缺少/usr/share/zoneinfo/Asia目录,我们就直接进入容器创建目录,并将宿主机对应文件拷贝到容器内。

 # 首先进入容器,建立目录
 docker exec -it [容器ID或容器名] /bin/sh
 mkdir -p /usr/share/zoneinfo/Asia
 # 在宿主机将时区文件拷贝至容器内目录
 docker cp /usr/share/zoneinfo/Asia/Shanghai [容器ID或容器名]:/usr/share/zoneinfo/Asia
 # 在容器内将文件拷贝到etc目录,如有提示按'Y'覆盖
 cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
 # 此时,在容器内查看时间为修改时区后的时间
 date -R
 Sat, 17 Apr 2021 23:23:46 +0800
(0)
公众号 微信扫一扫关注公众号 微信扫一扫关注公众号
上一篇 2021年4月4日 10:14
下一篇 2021年4月24日 09:30

相关推荐

扫码领红包