安装环境
CentOS 7.6
Docker 18.09.6
拉取镜像
我这里安装的版本是jenkins/jenkins:2.277.2-lts-centos7,可以去这里获取你需要的版本: https://hub.docker.com/r/jenkins/jenkins/tags?page=1&ordering=last_updated
docker run \
-u root \
-d \
-p 8040:8080 \
-p 50000:50000 \
-e TZ="Asia/Shanghai" \
-v /var/run/docker.sock:/var/run/docker.sock \
-v /home/jdk-11.0.10/bin/java:/home/jdk-11.0.10/bin/java \
-v /home/jdk-11.0.10:/home/jdk-11.0.10 \
-v /usr/local/apache-maven-3.6.3:/usr/local/apache-maven-3.6.3 \
-v /data/jenkins_home:/var/jenkins_home \
jenkins/jenkins:2.277.2-lts-centos
创建本地数据卷
我这里映射本地数据卷的路径为/data/jenkins_home/,你想放别的地方可以自行修改
mkdir -p /data/jenkins_home/
需要修改下目录权限,因为当映射本地数据卷时,/data/jenkins_home/目录的拥有者为root用户,而容器中jenkins用户的 uid 为 1000。
chown -R 1000:1000 /data/jenkins_home/
创建容器
docker run -d --name jenkins -p 8040:8080 -p 50000:50000 -v /data/jenkins_home:/var/jenkins_home jenkins/jenkins:2.277.2-lts-centos7
-d 标识是让 docker 容器在后台运行
–name 定义一个容器的名字,如果没有指定,那么会自动生成一个随机数字符串当做UUID
-p 8040:8080 端口映射,我本地的8080被占用了,所以随便映射了一个8040
-p 50000:50000 端口映射
-v /data/jenkins_home:/var/jenkins_home 绑定一个数据卷,/data/jenkins_home是刚才创建的本地数据卷
配置 Jenkins
通过浏览器访问 http://172.16.22.30:8040/(注意替换成你自己的IP和端口)进入初始页,如果 Jenkins 还没有启动完成,会显示如下内容
输入管理员密码
这里要求输入初始的管理员密码,根据提示密码在/var/jenkins_home/secrets/initialAdminPassword这个文件中,注意这个路径是 Docker 容器中的,所以我们通过如下命令获取一下
docker exec jenkins cat /var/jenkins_home/secrets/initialAdminPassword
85770376692448b7b6a8e301fb437848
别忘了我们映射了本地数据卷/data/jenkins_home/,所以也可以通过如下命令输出
cat /data/jenkins_home/secrets/initialAdminPassword
85770376692448b7b6a8e301fb437848
输入密码后,点击继续
安装插件
这里选择安装推荐的插件,然后 Jenkins 会自动开始安装,如果插件安装很慢,请参考 解决 Jenkins 安装插件很慢的问题 ( Linux )
安装完成后会自动跳转到下一步
创建管理员
实例配置
注意IP地址和端口就行了
配置完成
页面配置其他插件下载源:访问 【清华大学开源软件镜像站】 提供的镜像下载此插件
系统管理 ->插件管理 -> 高级 -> 升级站点
换成这个 https://mirrors.tuna.tsinghua.edu.cn/jenkins/plugins/cloudbees-folder/
然后按提交就可以快速下插件了
参考文章链接:https://segon.cn/install-jenkins-using-docker.html