在使用 docker 容器时,如果不指定时区,运行的容器产生的时间可能和实际想要的不一样,为了避免由于时区问题影响业务运行,在使用 docker 时需要指定下时区
方法一:修改 Dockerfile
RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
RUN echo 'Asia/Shanghai' >/etc/timezone
方法二:直接修改
在已运行的 docker 容器里修改时区
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
# 或者
cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
重启容器即可
方法三:运行时修改
# 创建并运行容器,通过 -e TZ="Asia/Shanghai" 设置时区
docker run -e TZ="Asia/Shanghai" -d -p 8080:8080 ........