高手的存在,就是让服务10亿人的时候,你感觉只是为你一个人服务......

docker java时区设置

目录
  1. 1. 解决方法
    1. 1.1. 第一种
    2. 1.2. 第二种

docker启动的时候通过-v /etc/localtime:/etc/localtime:ro ,

1
docker run  -v  /etc/localtime:/etc/localtime:ro  focustest-centos5  /opt/ActivePython-2.7/bin/supervisord -c /opt/supervisor/supervisord.conf &

容器内的系统时间确实跟宿主机的一样了,

但是在docker中启动resin,发现resin日志里的时间和系统时间差8个小时…..
Alt text

解决方法

第一种

在resin的启动脚本中加入TZ环境变量:

1
2
TZ="Asia/Shanghai"
export TZ

第二种

java启动参数中加上 -Duser.timezone=GMT+08

1
JAVA_ARGS="-J-Djava.util.logging.manager=com.caucho.log.LogManagerImpl  -J-Dfile.encoding=GBK -Duser.timezone=GMT+08  -J-d64 -J-Djava.awt.headless=true -Xms1024m -Xmx1024m -Xss2m -J-XX:PermSize=256M -J-XX:MaxPermSize=512M "

另外,网上很多说设置clock的、timezone的,都试过了,不行~
还有,百度真是搜不到东西,用bing了~