docker - docker 中的 Jenkins - 如何更改时区

标签 docker jenkins

题:

  • 如何在 docker 容器中的 jenkins 中设置时区,以便在重新启动服务器时保留设置?

  • 所以我在 AWS 上使用 docker 和 jenkins ( https://hub.docker.com/r/jenkinsci/blueocean/ ) 运行 RHEL 7。

    本文讨论如何更改时区
    https://wiki.jenkins.io/display/JENKINS/Change+time+zone

    基本上有两种方式
  • 在脚本控制台中运行 System.setProperty('org.apache.commons.jelly.tags.fmt.timeZone', 'America/New_York') 可以正常工作,但如果您重新启动服务器或 jenkins,它会恢复
  • 将它添加到/etc/sysconfig/jenkins,不幸的是该目录不存在,因为它在容器中运行

  • 但是我以这种方式为设置文件夹创建了一个卷
    docker run -d -p 8080:8080 -v $PWD/jenkins:/var/jenkins_home:z -t jenkinsci/blueocean 
    

    这使得主目录为“jenkins-blue”

    目录列表是
    4 -rw-r--r--.   1 <omitted user>  1647 Feb 27 17:00 config.xml
    4 -rw-r--r--.   1 <omitted user>  3982 Feb 27 16:57 copy_reference_file.log
    4 -rw-r--r--.   1 <omitted user>   966 Feb 27 17:04 credentials.xml
    0 drwxr-xr-x.   3 <omitted user>    16 Feb 27 17:06 fingerprints
    4 -rw-r--r--.   1 <omitted user>   156 Feb 27 16:57 hudson.model.UpdateCenter.xml
    4 -rw-r--r--.   1 <omitted user>  1230 Feb 27 17:07 hudson.plugins.emailext.ExtendedEmailPublisher.xml
    4 -rw-r--r--.   1 <omitted user>   370 Feb 27 16:58 hudson.plugins.git.GitTool.xml
    4 -rw-------.   1 <omitted user>  1712 Feb 27 16:57 identity.key.enc
    0 drwxr-xr-x.   2 <omitted user>    41 Feb 27 16:57 init.groovy.d
    4 -rw-r--r--.   1 <omitted user>    94 Feb 27 16:58 jenkins.CLI.xml
    4 -rw-r--r--.   1 <omitted user>     7 Feb 27 17:00 jenkins.install.InstallUtil.lastExecVersion
    4 -rw-r--r--.   1 <omitted user>     7 Feb 27 17:00 jenkins.install.UpgradeWizard.state
    4 -rw-r--r--.   1 <omitted user>   183 Feb 27 17:00 jenkins.model.JenkinsLocationConfiguration.xml
    4 -rw-r--r--.   1 <omitted user>   171 Feb 27 16:57 jenkins.telemetry.Correlator.xml
    0 drwxr-xr-x.   3 <omitted user>    18 Feb 27 17:00 jobs
    0 drwxr-xr-x.   4 <omitted user>    37 Feb 27 16:58 logs
    4 -rw-r--r--.   1 <omitted user>   907 Feb 27 16:58 nodeMonitors.xml
    0 drwxr-xr-x.   2 <omitted user>     6 Feb 27 16:58 nodes
    20 drwxr-xr-x. 106 <omitted user> 16384 Feb 27 16:59 plugins
    4 -rw-r--r--.   1 <omitted user>   129 Feb 28 17:35 queue.xml
    4 -rw-r--r--.   1 <omitted user>    64 Feb 27 16:57 secret.key
    0 -rw-r--r--.   1 <omitted user>     0 Feb 27 16:57 secret.key.not-so-secret
    4 drwx------.   4 <omitted user>  4096 Feb 27 17:14 secrets
    0 drwxr-xr-x.   2 <omitted user>   182 Feb 27 16:59 updates
    0 drwxr-xr-x.   2 <omitted user>    24 Feb 27 16:58 userContent
    0 drwxr-xr-x.   3 <omitted user>    57 Feb 27 17:00 users
    4 drwxr-xr-x.  11 <omitted user>  4096 Feb 27 16:57 war
    0 drwxr-xr-x.   2 <omitted user>     6 Feb 27 16:58 workflow-libs
    0 drwxr-xr-x.   4 <omitted user>    34 Feb 27 17:06 workspace
    

    最佳答案

    您可以申请 TZ 将环境放入您的 docker-compose 中,如下所示:

    image: jenkins/jenkins:alpine
    container_name: jenkins
    hostname: jenkins
    restart: always
    environment:
      - TZ=Asia/Shanghai
    volumes:
      - ./jenkins/data:/var/jenkins_home
      - ./jenkins/bin/jenkins.war:/usr/share/jenkins/jenkins.war
    

    关于docker - docker 中的 Jenkins - 如何更改时区,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55055357/

    相关文章:

    python - 如何在IBM Cloud功能中运行docker镜像?

    docker - 无法成功构建任何 golang docker 镜像,权限被拒绝

    jenkins - Jenkins 可以使多分支工作过期吗?

    tomcat - 无法使用 tomcat 8 运行 jenkins war

    linux - docker运行命令错误

    node.js - openssh 返回 "bad key type"以及加密生成的 key 对

    curl - Docker容器无法使用主机名访问另一个容器

    node.js - jenkins build 上私有(private) repo 的 NPM 身份验证错误

    svn - Jenkins:SVN 工作副本版本无效

    url - 如何进行Jenkins构建步骤来下载URL?