详细介绍如何通过 Docker 安装 Jenkins 。
安装环境
CentOS 7.6
Docker 18.09.6
拉取镜像
我这里安装的版本是2.222.3-centos
,可以去这里获取你需要的版本: https://hub.docker.com/_/jenkins?tab=tags
1 | docker pull jenkins/jenkins:2.222.3-centos |
创建本地数据卷
我这里映射本地数据卷的路径为/data/jenkins_home/
,你想放别的地方可以自行修改
1 | mkdir -p /data/jenkins_home/ |
需要修改下目录权限,因为当映射本地数据卷时,/data/jenkins_home/
目录的拥有者为root
用户,而容器中jenkins
用户的 uid 为 1000
。
1 | chown -R 1000:1000 /data/jenkins_home/ |
创建容器
1 | docker run -d --name jenkins -p 8040:8080 -p 50000:50000 -v /data/jenkins_home:/var/jenkins_home jenkins/jenkins:2.222.3-centos |
-d
标识是让 docker 容器在后台运行--name
定义一个容器的名字,如果没有指定,那么会自动生成一个随机数字符串当做UUID-p 8040:8080
端口映射,我本地的8080
被占用了,所以随便映射了一个8040
-p 50000:50000
端口映射-v /data/jenkins_home:/var/jenkins_home
绑定一个数据卷,/data/jenkins_home
是刚才创建的本地数据卷
配置 Jenkins
打开 Jenkins
通过浏览器访问 http://172.16.22.30:8040/
(注意替换成你自己的IP和端口)进入初始页,如果 Jenkins 还没有启动完成,会显示如下内容
输入管理员密码
这里要求输入初始的管理员密码,根据提示密码在/var/jenkins_home/secrets/initialAdminPassword
这个文件中,注意这个路径是 Docker 容器中的,所以我们通过如下命令获取一下
1 | docker exec jenkins cat /var/jenkins_home/secrets/initialAdminPassword |
别忘了我们映射了本地数据卷/data/jenkins_home/
,所以也可以通过如下命令输出
1 | cat /data/jenkins_home/secrets/initialAdminPassword |
输入密码后,点击继续
安装插件
这里选择安装推荐的插件
,然后 Jenkins 会自动开始安装,如果插件安装很慢,请参考 解决 Jenkins 安装插件很慢的问题 ( Linux )
安装完成后会自动跳转到下一步
创建管理员
实例配置
注意IP地址和端口就行了