docker解决tomcat时区问题
首先上服务器执行date
发现是CST没问题
突然想起来用的是docker
进docker执行date
docker exec -it tomcat1 /bin/bash
嗯果然是UTC
删除容器重新启动镜像并加上参数 -v /etc/localtime:/etc/localtime,再进去时区已经和本机一致是CST了
sudo docker run -it -d --name="tomcat1" -v /etc/localtime:/etc/localtime:ro
-v /$PWD/logs:/logs/contribution
-v /$PWD/yuegao:/usr/local/tomcat/webapps/yuegao
-p 8080:8080
-t tomcat:8.5.40
可是java获取的时区却还是UTC的
继续找资料。。。。
jre是通过配置文件读取本地时间的:/etc/timezone
所以把时区加进去:
docker exec -it tomcat1 /bin/bashecho "Asia/Shanghai" > /etc/timezone
重启了容器(必须!!!)
问题解决
以上是 docker解决tomcat时区问题 的全部内容, 来源链接: utcz.com/z/511007.html