1. 创建镜像的时候修改
ENV TZ=Asia/Shanghai
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
或者:
RUN cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
Bash
2. 创建后修改
ls -l /etc/localtime
docker cp /usr/share/zoneinfo/Asia/Shanghai 容器名:/etc/localtime
docker cp /etc/localtime 容器id:/etc/
docker run -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -v /etc/timezone:/etc/timezone:ro -v /etc/localtime:/etc/localtime:ro --name mysql3306 mysql:5.7
3. 如果上述两个方法时区还是不正确,那么:
ls -l /etc/localtime 查看是什么时区
(1)先进入容器内部 docker exec -it bash
(2) cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
或者
rm /etc/localtime
ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
博客地址:https://www.dreamsoul.top/archives/1704337385106