技术解析

MC服务器时容器内日志时间和宿主机不一样
0
2021-04-27 17:15:53
idczone

写在开头

前几天研究用Docker运行MC服务器来实现资源隔离,但是发现一个小问题,容器内使用 date命令显示时间正常,但是MC服务器里日志时间错误,疑似时区出现问题。

解决过程

经过初步确认,应该是时间问题,于是百度搜索相关问题,找到了前辈遇到的坑,刚好说明了这个问题,并且里面提出了解决方案,使用解决方案操作后,重启容器,显示时间正常。

解决方法

1.向宿主机的/etc/timezone文件内写入时区,JDK通过这个文件里面的时区来生成日志时间

Bash
echo "Asia/Shanghai" > /etc/timezone

2.重建容器,挂载宿主机的localtime和timezone文件到容器中,并且设置权限为只读,防止被恶意修改

Bash
-v /etc/timezone:/etc/timezone:ro \
-v /etc/localtime:/etc/localtime:ro \

3.重新启动容器即可

Bash
docker restart [Container]

4.(修改成功)

201812211545384899662012


数据地带为您的网站提供全球顶级IDC资源
在线咨询
专属客服