docker tomcat时间少8小时问题解决

文章讲述了如何在Docker容器中调整Java程序的时间,因为程序显示的时间比系统时间快8小时。提供了两种方法:一是直接修改catalina.sh文件中的JAVA_OPTS设置timezone;二是通过宿主机创建setenv.sh文件并将设置复制到容器。最后需重启容器以应用更改。

docker容器与系统时间一致并且正确,但是java程序在运行中通过log日志发现发了8小时

解决方法

修改docker容器中tomcat/bin/catalina.sh文件,添加一下内容


  1. JAVA_OPTS="$JAVA_OPTS -Dfile.encoding=UTF8 -Duser.timezone=GMT+08"

附 操作命令

一.通过直接修改catalina.sh

因docker容器中没有vi,所以需要将其cp出来,修改后,在cp进容器


  1. docker cp tomcat8080:/usr/local/tomcat/bin/catalina.sh /root

进行修改将

JAVA_OPTS=”$JAVA_OPTS -Dfile.encoding=UTF8 -Duser.timezone=GMT+08” 写入catalina.sh文件中

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzM3NzM3Mjc0_size_16_color_FFFFFF_t_70

写入后保存

将其cp到容器中


  1. docker cp /root/catalina.sh tomcat8080:/usr/local/tomcat/bin/

然后重启容器

二. 通过setenv.sh

可以在宿主机创建文件setenv.sh

将JAVA_OPTS=”$JAVA_OPTS -Dfile.encoding=UTF8 -Duser.timezone=GMT+08” 写到文件中

然后将setenv.sh cp到docker容器tomcat/bin 目录下

然后重启tomcat容器

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值