我想更改 Jenkins 的时区。
我更改了 Jenkins 安装服务器的时区,但 Jenkins UI 显示不同的时间。
我需要为 Jenkins UI 设置 PST 时间。我该怎么办?
在 Jenkins2 上,您可以通过 Groovy 控制台在运行时设置时区。只需打开“管理 Jenkins >> 脚本控制台”并输入
System.setProperty('org.apache.commons.jelly.tags.fmt.timeZone', 'America/Los_Angeles')
例如。 如果您没有机会更改启动变量但拥有实例的管理员权限,则特别有用。 (通常在容器化设置中找到)。唯一的缺点:重启后设置消失。
登录詹金斯并转到右上角并单击用户
然后单击配置并向下滚动到最后一个选项“用户定义的时区”,在这里您可以找到不同的时区。
我使用的是詹金斯版本2.222.3。
请参阅 https://wiki.jenkins-ci.org/display/JENKINS/Change+time+zone。 Jenkins 应该尊重为 java 设置的时区。但是您可以通过添加以下内容来强制 Jenkins 使用特定时区:
java -Dorg.apache.commons.jelly.tags.fmt.timeZone=America/Los_Angeles
这应该将您的时区设置为 PST。
在尝试找到此问题的答案时,发现问题已经为此开放。
虽然问题状态为
OPEN, Unresolved
,但我看到一个选项,至少可以在 Console Output
中的 Jenkins (2.60.2) >> <jobName> >> <build#>
时间戳上使用浏览器时区:
我选择了系统范围的解决方案:
我有一个在 AWS(us-east-2 中)上运行的 bitnami 映像(默认为 UTC)。该服务器所做的所有工作都在我的本地时区中进行,并且所有访问它的人都是本地人。所以我将
/etc/timezone
和 /etc/localtime
更改为澳大利亚/悉尼并重新启动 Jenkins。
我使用的是 ubuntu 版本 16.04 和 jenkins 版本 Jenkins ver. 2.164.3 我尝试使用 java -
Dorg.apache.commons.jelly.tags.fmt.timeZone=America/Los_Angeles
但对我不起作用。
然后我最终使用了这个命令-
sudo dpkg-reconfigure tzdata
这将为您提供一个 GUI 来设置您的时区,然后您必须通过命令重新启动 jenkins
Sudo /etc/init.d/jenkins stop
和
sudo /etc/init.d/jenkins start
希望这有帮助! 干杯 普拉泰克
本节有关执行启动脚本的部分可作为每次启动后执行典型脚本控制台代码的指南。使用这个“技巧”将有助于通过 Groovy 代码永久设置属性。这也很容易维护。
https://www.jenkins.io/doc/book/managing/groovy-hook-scripts/
如果您在 Docker 容器外运行 Jenkins,那么下面的 Dockerfile 设置应该可以更新 Jenkins 中的时区。
FROM jenkins/jenkins:lts-jdk11
USER root
# Install necessary packages
RUN apt-get update && apt-get install -y \
curl \
unzip
# update timezone
ENV TZ=Asia/Kolkata
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
USER jenkins
ENV CASC_JENKINS_CONFIG /usr/share/jenkins/ref/jenkins.yaml
COPY files/jenkins.yaml /usr/share/jenkins/ref/jenkins.yaml
RUN echo 2.0 > /usr/share/jenkins/ref/jenkins.install.UpgradeWizard.state
COPY files/InitialConfig.groovy /usr/share/jenkins/ref/init.groovy.d/InitialConfig.groovy
COPY files/plugins.txt /usr/share/jenkins/ref/plugins.txt
RUN jenkins-plugin-cli -f /usr/share/jenkins/ref/plugins.txt
目前,您可以使用 JAVA_OPTS 更改系统范围内的时区,或者仅在您自己的用户设置中进行设置。
查看官方文档:
https://www.jenkins.io/doc/book/managing/change-system-timezone/
https://www.jenkins.io/doc/book/using/change-time-zone/