这些天发现了一个定时任务执行总是慢8个小时,但自己明明Docker里的时区是东八区。后来才发现原来JVM也有自己的时区。
1.进入Docker容器,修改/etc/sysconfig/clock文件,若没有该文件则创建
vi /etc/sysconfig/clock
#添加如下内容
ZONE="Asia/Shanghai"
UTC=false
ARC=false
2.设置Docker的时区设置为上海时区
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
3.对准时间
yum -y install ntp
ntpdate cn.pool.ntp.org
4.设置硬件时间和系统时间一致并校准
/sbin/hwclock --systohc
5.修改/etc/timezone文件
vi /etc/timezone
#替换其中内容为
Asia/Shanghai
如果第三步ntp报错Can't adjust the time of day: Operation not permitted,直接
cp -f /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
即可



