我们在docker中部署程序的时候常常遇到程序获取的时间相差几个小时的问题,这是因为我们的程序是以docker环境中的时间作为程序的标准时间。
其实解决这个问题很简单,只需要在docker构建的时候或者在构建好的容器运行的时候加入时区的设置即可解决问题。
在构建的时候加入时区设置,例如mysql的Dockerfile
FROM mysql:5.6
ENV TZ=Asia/Shanghai
在运行的时候加入时区设置
version: "2"
services:
db:
image: xvjialing/mysql
container_name: mysql
ports:
- "3336:3306"
restart: always
environment:
- MYSQL_ROOT_PASSWORD=xxxxxx
- TZ=Asia/Shanghai
volumes:
- ./data:/var/lib/mysql
logging:
driver: "json-file"
options:
max-size: "1m"
在这里我们可以看出,只需要加入环境变量TZ=Asia/Shanghai
即可解决问题。
个人博客:https://blog.xvjialing.xyz
github主页:https://github.com/xvjialing
微信公众号
微信公众号
网友评论