Docker安装Jenkins安装
-
下载Jenkins
docker pull jenkins/jenkins:2.426.2-lts
**注:**需要指定版本号,不然拉取的镜像版本是比较老的版本
-
创建挂载目录
创建一个挂载目录,用于存放jenkins的数据
mkdir -p /opt/docker/jenkins
-
编写yml文件
jenkins.yml
version: '3.5' services: jenkins: image: jenkins/jenkins:2.426.2-lts restart: always user: "root" container_name: jenkins environment: - TZ="Asia/Shanghai" ports: - 8081:8080 - 50000:50000 volumes: - ./:/var/jenkins_home - /etc/localtime:/etc/localtime - /usr/bin/docker:/usr/bin/docker - /var/run/docker.sock:/var/run/docker.sock
将文件上传到
/opt/docker/jenkins
,因为文件中的目录映射使用了相对路径,所以必须上传到这个目录文件解读:
user:将容器内进程的用户身份设置为 root 用户
-v :目录挂载,将主机上的 /usr/docker/jenkins_data 目录挂载到容器内的 /var/jenkins_home 目录,用于持久化 Jenkins 的数据。/etc/localtime:/etc/localtime:将本地主机上的时区信息文件挂载到容器内的 /etc/localtime 文件中,确保容器内的时间与主机上的时间一致
-v /usr/bin/docker:/usr/bin/docker: 将主机上的 /usr/bin/docker 文件挂载到容器中的 /usr/bin/docker,这样容器内的 Jenkins 可以直接使用宿主机上的 Docker 命令。在使用 GitLab/Jenkins 等 CI 软件的时候需要使用 Docker 命令来构建镜像,需要在容器中使用 Docker 命令;通过将宿主机的 Docker 共享给容器
-v /var/run/docker.sock:/var/run/docker.sock: 将主机上的 Docker socket 文件挂载到容器中的相同位置,这样容器内的 Jenkins 可以与宿主机上的 Docker 引擎进行通信。
-
启动Jenkins容器
docker-compose -f jenkins.yml up -d
-
验证Jenkins容器是否启动成功
docker ps
-
获取管理员密码
我们在进入Jenkins的管理页面的时候,是需要管理员密码,所以我们需要获取管理员密码
获取管理员密码有两种方式
-
查看日志
使用下面命令查看jenkins的输出日志,myjenkins是我们在启动jenkins时给jenkins指定的容器名
docker logs -f jenkins
找到下面这行代码,Please use the following password to proceed to installation下面的就是密码
密码 -
查看文件
不看日志,我们也可以直接查看/opt/docker/jenkins/secrets/initialAdminPassword文件,这个目录在我们进入jenkins 管理页面时会看到
-
-
修改插件源
Jenkins在安装插件时,下载相关插件包特别慢,我们可以将Jenkins默认的插件数据源变更为国内数据源,然后重启Jenkins
#进入更新配置目录 cd /opt/docker/jenkins/updates
使用下面命令替换default.json文件中指定的源
sed -i 's/http:\/\/updates.jenkins-ci.org\/download/https:\/\/mirrors.tuna.tsinghua.edu.cn\/jenkins/g' default.json && sed -i 's/http:\/\/www.google.com/https:\/\/www.baidu.com/g' default.json
修改下载地址:在/opt/docker/jenkins中找到hudson.model.UpdateCenter.xml文件
将url替换为http://mirror.esuni.jp/jenkins/updates/update-center.json
<sites> <site> <id>default</id> <urI>http://mirror.esuni.jp/jenkins/updates/update-center.json</url> </site> </sites>
-
插件推荐
除了推荐插件之外,下面是一些常用插件,大家按需安装
-
Docker Pipeline && Docker
安装Docker Pipeline会自动安装docker相关的
这个允许我们自定义agent使用docker环境
-
Git Parameter
解析git参数,允许我们选择分支进行构建
-
Active Choices
可以做到参数的级联选择
-
Generic Webhook Trigger
通用的webhook触发器,构建更强大的webhook功能
-
Role-based Authorization Strategy
RBAC权限指定,给一个用户精确指定权限
-
List Git Branches Parameter
列出分支参数
-
Build With Parameters
基于自定义参数构建
-
安装Blue Ocean插件
要将Blue Ocean安装到您的Jenkins实例:
-
如果需要,请确保您已经登录到j