Docker 容器时间同步指南
问题现象
# 宿主机时间
$ date
Thu Feb 4 14:08:12 CST 2021
# 容器内时间
$ docker exec -it container_name date
Thu Feb 4 06:08:12 UTC 2021解决方案
方法一:启动时挂载时区文件(推荐)
# 基本语法
docker run -d -v /etc/localtime:/etc/localtime:ro [其他参数] [镜像名]
# 实际示例
docker run -d -p 8080:80 -v /etc/localtime:/etc/localtime:ro nginx
# docker-compose 示例
version: '3'
services:
app:
image: nginx
volumes:
- /etc/localtime:/etc/localtime:ro方法二:使用环境变量设置时区
方法三:复制时区文件到容器
方法四:容器内手动配置(高级)
验证时间同步
Docker Compose 配置示例
最佳实践建议
常见问题排查
Alpine 镜像时区问题
权限问题
时区文件不存在
Last updated