1)共享主机的localtime
创建容器的时候指定启动参数,挂载localtime文件到容器内,保证两者所采用的时区是一致的。
docker run -ti -d --name jenkins -v /etc/localtime:/etc/localtime:ro docker.io/nginx /bin/bash
2)复制主机的localtime
docker cp /etc/localtime jenkins:/etc/
此时容器的时间已经设置成和宿主机相同的时间
因为jenkins是java开发,java环境读取的时间是根据/etc/timezone的
查看一下这个文件的内容
root@fcaad17f146a:/# cat /etc/timezone
Etc/UTC
因此需要把UTC改为CST,或者在UTC的基础上加8小时
root@fcaad17f146a:/# sed -i ‘s/UTC/UTC+8/’ /etc/timezone
root@fcaad17f146a:/# cat /etc/timezone
Etc/UTC+8
回到jenkins去构建发现时间已经正常
原文地址:https://www.cnblogs.com/linyouyi/p/10255138.html