在游戏 服务器中,遇到游戏时间和北京时间不一致的问题。
遇到docker时间不一致,大多是因为默认时区没有设置导致,一般在宿主机上使用 date 命令看到的是 CTS 时间,进入docker后使用 date 命令查看的是 UTC 时间。
CTS: China Standard Time,UTC+8:00 中国沿海时间(北京时间)
UTC: Universal Time Coordinated 世界协调时间
设置方法:
在容器中修改下/etc/localtime文件的名称,避免冲突。
- cd /etc/
- mv localtime localtime_bak
- cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
复制代码 然后在查看时间 docker中的时间只修改时间,输入: 同时修改日期时间,注意要加双引号,日期与时间之间有一空格,输入: - date -s '2021-04-02 10:25:00'
复制代码上述修改只是修改了linux的系统时间,CMOS中的时间可能还没有改变,所以为了保险,需要使用 clock -w 把当前系统时间写入到CMOS中。 |