docker容器时间跟宿主机时间同步
1、共享主机的localtime
在启动命令增加-v /etc/localtime:/etc/localtime:ro -v /etc/timezone:/etc/timezone:ro
docker run -d --name server --net demo -v /etc/localtime:/etc/localtime:ro -v /etc/timezone:/etc/timezone:ro server
2、复制主机的localtime
运行命令docker cp /etc/localtime [containerId]:/etc/localtime
,docker cp /etc/timezone [containerId]:/etc/timezone
containerId 为要修改的容器id,注意需要重启容器
3、创建dockerfile文件的时候,自定义该镜像的时间格式及时区
在dockerfile文件里添加RUN /bin/cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo 'Asia/Shanghai' >/etc/timezone
FROM java:8
EXPOSE 8087
VOLUME /tmp
ADD /target/server.jar /app.jar
RUN bash -c 'touch /app.jar'
#设置时区
RUN /bin/cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo 'Asia/Shanghai' >/etc/timezone
ENTRYPOINT ["java","-jar","/app.jar","--spring.profiles.active=prod"]