Jenkins的默认时区通常是UTC(协调世界时)。这就导致Jenkins定时任务触发的一些报告内容时区不正确,那么Docker启动的Jenkins如何来调整时区呢?
假设我们的Jenkins服务是docker-compose启动的。
方法一:通过环境变量设置时区在docker-compose.yaml文件中,为Jenkins服务添加环境变量TZ来设置时区。例如,要设置为东八区(Asia/Shanghai):
version: '3' services: jenkins: image: jenkins/jenkins:lts container_name: jenkins restart: always ports: - "8080:8080" environment: - TZ=Asia/Shanghai方法二:构建镜像时设置时区使用自定义的Dockerfile来构建Jenkins镜像,在Dockerfile中添加一行来设置时区环境。此方法需要重新构建镜像。
# DockerfileFROM jenkins/jenkins:lts ENV TZ=Asia/Shanghai 方法三:通过卷来将宿主机的时区文件直接挂载到容器内这个方法简单直接,利用了Docker的卷挂载功能来共享宿主机的时区设置,而不需要在容器内部进行任何额外的配置。具体参考如下:
version: '3' services: jenkins: image: jenkins/jenkins:lts container_name: jenkins restart: always ports: - "8080:8080" volumes: - /etc/localtime:/etc/localtime:ro如果您在日常运维工作中遇到了任何问题或挑战,无论是关于系统配置、性能优化、故障排除还是其他方面,都欢迎您随时留言或私信我。我会尽我所能为您提供解决方案或建议。相互学习,积累更多的经验和知识,让工作更加顺畅高效[中国赞]