前言
一般情况下我们容器的时区已经在启动的时候设置好了,但是如果你没有在启动脚本里面设置时区可能会导致项目过多,删除容器重新构建容器时区带来的成本比较高。
第一种:启动脚本配置时区
查看当前操作系统的时区
命名:
timedatectl status
如下:
配置启动脚本
sh脚本方式:
-e TZ=Asia/Shanghai \
-v /etc/localtime:/etc/localtime:ro \
启动命令方式:
/* 这里配置的环境变量 Asia/Shanghai就是我所需要的时区 */
# docker run -e TZ="Asia/Shanghai" -v /etc/localtime:/etc/localtime:ro 镜像名
第二种:已经启动的服务容器替换时区
方法一:在【宿主机】中执行命令,【docker cp /etc/localtime 容器ID:/etc/localtime】,重启Docker容器。
方法二:在【宿主机】中执行命令,【docker cp /usr/share/zoneinfo/Asia/Shanghai 容器ID:/etc/localtime】,重启Docker容器。
方法三(强烈推荐):在【容器】中执行命令,【ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime】,重启Docker容器。
第三种:制作镜像的时候在pom文件中设置时区
这种方式比较靠谱,当你启动镜像的时候,容器自动被设置时区。一般推荐开发部署的时候使用。
标签:容器,Shanghai,Asia,etc,设置,docker,时区,localtime From: https://www.cnblogs.com/csh-java/p/17932347.html