1.描述
FROM openjdk:8u181-jre MAINTAINER pascall zhangjie@pascall.xyz COPY target/biz.jar /app.jar VOLUME /home/logs EXPOSE 8000 ENTRYPOINT ["java","-jar","/app.jar", "--spring.profiles.active=biz-dev"]
以上面的Dockerfile构建的项目镜像,在项目运行时,使用new Date()取当前时间,与真实时间相差8小时
openjdk:8u181-jre:基础镜像,使用的是UTC
root@2f6b634c8ed6:/# date Thu Feb 20 06:47:22 UTC 2020
2.解决办法
2.1 直接修改正在运行的容器
# 进入容器 docker exec -it biz-server bash # 更改时区 echo "Asia/Shanghai" > /etc/timezone # 退出容器 exit # 重启容器 docker restart biz-server
2.2 修改用于构建的Dockerfile
FROM openjdk:8u181-jre MAINTAINER pascall zhangjie@pascall.xyz COPY target/biz.jar /app.jar RUN echo "Asia/Shanghai" > /etc/timezone VOLUME /home/logs EXPOSE 8000 ENTRYPOINT ["java","-jar","/app.jar", "--spring.profiles.active=biz-dev"]