如何修改 docker容器 java 程序的时区

1. 如果单独只是修改docker容器的时区, 修改/etc/localtime使本地时间正确(对应linux的date指令正确),

执行

docker run -d --name assetshealthiness-service  -v /data/saas/health:/logs -v /etc/localtime:/etc/localtime:ro  -p 9002:9002 10.122.61.199/saas/assetshealthiness-service:test

使用date -R 命令就可以得到八时区的时间。

但是此时jvm时区并没有变化,还是UTC+0。还需要修改/etc/timezone使得时区正确(对应Java时间正确)。

也即是共有两个文件要修改,修改/etc/localtime使本地时间正确(对应linux的date指令正确) ,还需要修改/etc/timezone使得时区正确(对应Java时间正确)。

2. 在宿主机里面执行下面的两条命令:

echo 'Asia/Shanghai' >/etc/timezone
docker run -d --name assetshealthiness-service  -v /data/saas/health:/logs -v /etc/localtime:/etc/localtime:ro -v /etc/timezone:/etc/timezone:ro -p 9002:9002 10.122.61.199/saas/assetshealthiness-service:test

  这样两步后,docker 容器和里面的java应用的时间都是UTC+8了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值