0%

docker下安装jenkins

安装jenkins并挂载目录

  • 从dockerhub获取镜像并安装jenkins

    1
    docker run -itd --name jenkins -p 9001:8080 -p 9002:50000 -v /Users/ux/Applications/docker/jenkins/jenkins_home:/var/jenkins_home jenkins/jenkins
  • 从jenkins的安装日志上找到admin的初始密码

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    *************************************************************
    *************************************************************
    *************************************************************
    Jenkins initial setup is required. An admin user has been created and a password generated.
    Please use the following password to proceed to installation:
    3d3f3166b89a47e58939b4573f4b2133
    This may also be found at: /var/jenkins_home/secrets/initialAdminPassword
    *************************************************************
    *************************************************************
    *************************************************************
  • 或者进入docker容器找到初始密码(或者直接在宿主机挂载目录找到对应文件,查看初始密码)

    1
    2
    3
    4
    5
    #进入jenkins容器
    docker exec -it jenkins /bin/bash
    #查看/var/jenkins_home/secrets/initialAdminPassword文件内容
    cat /var/jenkins_home/secrets/initialAdminPassword
    #得到初始admin密码为:3d3f3166b89a47e58939b4573f4b2133
  • 初始化时选择“install suggested plugins”报错:An error occurred during installation: No such plugin: cloudbees-folder

    1
    2
    3
    4
    5
    6
     如果是直接从dockerhub搜索jenkins,并且选择使用了jenkins,而不是jenkins/jenkins下的镜像包,则在初始化时会报错,原因是jenkins版本太低。(从官网跳转的链接发现)拉取jenkins/jenkins下的镜像安装即可。

    docker run -itd --name jenkins -p 9001:8080 -p 9002:50000 -v /Users/ux/Applications/docker/jenkins/jenkins_home:/var/jenkins_home jenkins

    An error occurred during installation: No such plugin: cloudbees-folder
    初始化时报没有这个插件错误
  • 参考文档

    https://www.jenkins.io/download

https://registry.hub.docker.com/_/jenkins

  • 无效解决方案

https://aflyun.blog.csdn.net/article/details/103338558

插件安装

https://www.freesion.com/article/9270779025

docker下jenkins更新

1.查看jenkins容器id:

1
docker ps

2.将jenkins.war更新包拷贝到jenkins容器中:

1
docker cp /Users/ux/Downloads/jenkins.war caf331b882a9:/usr/share/jenkins/jenkins.war

注:

1
2
3
/Users/ux/Downloads/jenkins.war 是本地war所在路径
caf331b882a9 是jenkins容器id
/usr/share/jenkins/jenkins.war 是拷贝目的地

jenkins忘记密码重置:

1.找到对应的config.xml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
/Users/ux/Applications/docker/jenkins/jenkins_home/config.xml

1.设置为无密码登录:
将<useSecurity>true</useSecurity>
改为<useSecurity>false</useSecurity>
重启服务即可,或者可以按步骤2做

2.重置密码:
删除以下配置项,重启服务即可:

<useSecurity>true</useSecurity>
<authorizationStrategy class="hudson.security.FullControlOnceLoggedInAuthorizationStrategy">
<denyAnonymousReadAccess>true</denyAnonymousReadAccess>
</authorizationStrategy>
<securityRealm class="hudson.security.HudsonPrivateSecurityRealm">
<disableSignup>true</disableSignup>
<enableCaptcha>false</enableCaptcha>
</securityRealm>

3.注册用户

系统管理>全局安全配置> 安全域[jenkins专有用户数据库],勾选允许注册,以及 下一项的“任何用户可以做任何事(没有任何现在)”

然后,在登录页注册admin/admin

然后在全局安全配置里关闭注册,设置登录用户可以做任何事
ok