问题
时区错误,使用jdk获取当前时间慢8个小时
使用docker exec
命令进入容器内部发现alpine的时区是UTC时区,
➜ docker exec -it f97c1e219baa sh
/ # date
Wed Oct 28 08:00:22 UTC 2020
/ # date -R
Wed, 28 Oct 2020 08:00:25 +0000
UTC时区是GTM0
时区而北京时间是GTM+8
时区,所以使用jdk localdatetime
跟date
获取到的时间总慢8个小时.
知道原因就好办了,只要将时间设置成北京时间就好了.
解决方法
方案1. 修改Dockerfile
设置Alpine linux系统时区 查找alpine linux的文档得知可以通过tzdata包来设置时区,在构建docker 镜像的时候,Dockerfile加上这句话: