缘起
最近整理服务器,使用docker搭建nginx等项目,发现日志打印时间不对,和服务器时间不一致,这里记录下解决过程
说明
正常如果是我们自制镜像,我们其实可以在Dockerfile 里面直接指定时区,一般不会有这种问题,今天我们介绍的方法是docker容器已经启动后怎么容器内时间和宿主机不一致问题
开始
- 检查宿主机时间
date
Thu Sep 9 09:57:34 CST 2021
- 检查容器时间
- 进入容器
docker exec -it yc_nginx /bin/bash
yc_nginx 是你的容器名
- 输入命令
date
- 退出容器
exit
如果发现确实是因为宿主机与容器时间不一致的 在开始第三步
- 复制宿主机时间文件到容器
docker cp /usr/share/zoneinfo/Asia/Shanghai \
yc_nginx:/usr/share/zoneinfo/Asia/
- 进入容器修改时间
- 进入容器
进入容器方法和第二步一样
docker exec -it yc_nginx /bin/bash
- 删除 localtime
rm -rf /etc/localtime
- cp 复制
cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
- date 检查
date