下载Docker Jenkins图像后,无法在Ubuntu中找到jenkins_home文件夹

时间:2016-10-11 05:15:58

标签: jenkins docker jvm

我从Docker中央存储库中删除了Docker-Jenkins图像并运行以下命令

$ docker run -p 8080:8080 -p 50000:50000 Jenkins

在安装过程中,出现以下行。

*************************************************************************`
Jenkins initial setup is required. An admin user has been created and a password generated.
Please use the following password to proceed to installation:
xxxxxxxxxxxxxxxxxxxxxx
This may also be found at: /var/jenkins_home/secrets/initialAdminPassword
*************************************************************************`

但是在我的/var中,没有jenkins_home文件夹。

我收到以下错误,但无法使用localhost:8080

访问我的Jenkins
  

信息:詹金斯完全正常运行   2016年10月11日上午4:31:19 winstone.Logger logInternal
  信息:JVM正在终止。关闭Winstone

生成管理员密码后,我可以访问Jenkins仪表板。但是,JVM立即被终止,我无法再访问Jenkins页面。

3 个答案:

答案 0 :(得分:13)

启动jenkins后,您有两个选择:

docker run -p 8080:8080 -d -p 50000:50000 jenkins

-d选项是在后台运行容器) 您可以进入容器并检查初始管理密码: 检查运行容器

[root@localhost ~]# docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                                              NAMES
cc73eb6d6f75        jenkins             "/bin/tini -- /usr/lo"   32 seconds ago      Up 30 seconds       0.0.0.0:8080->8080/tcp, 0.0.0.0:50000->50000/tcp   ecstatic_leakey

进入容器

docker exec -it cc73eb6d6f75 bash

并检查adminpasswd的内容

jenkins@cc73eb6d6f75:/$ cat /var/jenkins_home/secrets/initialAdminPassword
1c8be33b31904cacb5xxx

或者您创建自己的命名泊坞窗卷:

[root@localhost ~]# docker volume create --name jenkins-volume
jenkins-volume

此卷位于/var/lib/docker/volumes/jenkins-volume的主机上。 您可以启动jenkins并将其与卷连接:

docker run -p 8080:8080 -d -p 50000:50000 -v jenkins-volume:/var/jenkins_home jenkins

容器内/var/jenkins_volume的所有数据都将安装在指定的卷中。 hostpath是:/var/lib/docker/volumes/jenkins-volume/_data

请检查我的主持人:

[root@localhost ~]# ls /var/lib/docker/volumes/jenkins-volume/_data
config.xml               hudson.model.UpdateCenter.xml   init.groovy.d                                jobs              nodes          secret.key                updates      war
copy_reference_file.log  hudson.plugins.git.GitTool.xml  jenkins.install.InstallUtil.lastExecVersion  logs              plugins        secret.key.not-so-secret  userContent  workspace
credentials.xml          identity.key.enc                jenkins.install.UpgradeWizard.state          nodeMonitors.xml  queue.xml.bak  secrets                   users

答案 1 :(得分:1)

如果通过Jenkins Docker official instructions安装,则jenkins-data Docker卷将在run命令中自动创建。因此,要获取密码:

sudo cat /var/lib/docker/volumes/jenkins-data/_data/secrets/initialAdminPassword

答案 2 :(得分:0)

如果要将主机目录挂载为jenkins_home,则需要为该目录​​提供Jenkins用户(UID 1000)的所有权。

JENKINS_HOME=/home/$(whoami)/jenkins_home mkdir $JENKINS_HOME chown -R 1000 $JENKINS_HOME

运行Jenkins容器:

docker run -d --name jenkins \ -p 8080:8080 -p 50000:50000 \ -v /home/$(whoami)/jenkins_home:/var/jenkins_home \ jenkins

您可以找到有关如何从容器运行Jenkins CI的详细演练here