介绍
Jenkins是一个独立的开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能。前身是Hudson是一个可扩展的持续集成引擎。可用于自动化各种任务,如构建,测试和部署软件。Jenkins可以通过本机系统包Docker安装,甚至可以通过安装Java Runtime Environment的任何机器独立运行。
Jenkins特点
- 开源免费;
- 跨平台,支持所有的平台;
- master/slave支持分布式的build;
- web形式的可视化的管理页面;
- 安装配置超级简单;
- tips及时快速的帮助;
- 已有的200多个插件

安装教程
这里我们使用的是离线包方式安装。
官网镜像地址: Index of /
下载地址: Jenkins download and deployment
华为镜像地址: 华为开源镜像站_软件开发服务_华为云
直接下载war包,并安装好jdk之后,输入:nohup java -jar jenkins.war --httpPort=8888 &
进行启动,然后网页浏览器输入 ip:8888打开设置好账号密码之后登录即可,插件安装推荐使用官方推荐。

Docker安装
拉取Jenkins镜像
1
|
docker pull jenkins/jenkins
|
编写docker-compose.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
|
version: "3.1"
services:
jenkins:
image: jenkins/jenkins
container_name: jenkins
ports:
- 8080:8080
- 50000:50000
volumes:
- ./data/:/var/jenkins_home/
- /usr/bin/docker:/usr/bin/docker
- /var/run/docker.sock:/var/run/docker.sock
- /etc/docker/daemon.json:/etc/docker/daemon.json
|

首次启动会因为数据卷data目录没有权限导致启动失败,设置data目录写权限

重新启动Jenkins容器后,由于Jenkins需要下载大量内容,但是由于默认下载地址下载速度较慢,需要重新设置下载地址为国内镜像站
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
# 修改数据卷中的hudson.model.UpdateCenter.xml文件
<?xml version='1.1' encoding='UTF-8'?>
<sites>
<site>
<id>default</id>
<url>https://updates.jenkins.io/update-center.json</url>
</site>
</sites>
# 将下载地址替换为http://mirror.esuni.jp/jenkins/updates/update-center.json
<?xml version='1.1' encoding='UTF-8'?>
<sites>
<site>
<id>default</id>
<url>http://mirror.esuni.jp/jenkins/updates/update-center.json</url>
</site>
</sites>
# 清华大学的插件源也可以https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json
|
再次重启Jenkins容器,访问Jenkins(需要稍微等会)

查看密码登录Jenkins,并登录下载插件
1
|
docker exec -it jenkins cat /var/jenkins_home/secrets/initialAdminPassword
|





