docker时间校正

来源:互联网 发布:淘宝上小提琴教学视频 编辑:程序博客网 时间:2024/06/05 07:46

docker使用centos6镜像使用date命令,发现时间不准确

查看主机时间

root@localhost ~]# date2016年 07月 27日 星期三 22:42:44 CST


查看容器时间

root@b43340ecf5ef:/#date                                                                                                                         Wed Jul 27 14:43:31 UTC 2016
可以发现,他们相隔了8小时。

CST应该是指(China Shanghai Time,东八区时间) 
UTC应该是指(Coordinated Universal Time,标准时间) 

所以,这2个时间实际上应该相差8个小时。

所以,必须统一两者的时区。

提供三种方法解决:

1、共享主机的localtime  

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

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

2、复制主机的localtime  

docker cp /etc/localtime containerid:/etc/localtime
3、软连接
ln -sf /usr/share/zoneinfo/Asia/Shanghai/etc/localtimeecho "Asia/Shanghai" >/etc/timezone
如果发现主机上装有mysql,主机时间改变,要重启mysql,才能使select now();显示的是主机时间
0 0
原创粉丝点击