Jenkins是开源CI&CD软件领导者, 提供超过1900个插件来支持构建、部署、自动化, 满足任何项目的需要。 许多商业DevOps工具,如腾讯云CODING,其CI&CD的基础也是集成了Jenkins。
一、安装启动
这里只介绍单机安装方式。
1.1 WAR 文件方式
1. 安装JDK
最新版Jenkins仅支持Java 11、Java 17、Java 21。建议安装Java17。
# wget https://download.oracle.com/java/17/latest/jdk-17_linux-x64_bin.rpm
# sudo yum -y install ./jdk-17_linux-x64_bin.rpm
2. 下载WAR包
选择合适的版本进行下载,官方地址:https://get.jenkins.io/war-stable/
3. 启动WAR包
快速启动:
# java -jar jenkins.war
或做下简单设置(和封装start.sh):
# nohup java -Dfile.encoding=utf-8 -Dhudson.util.ProcessTree.disable=true -DJENKINS_HOME=jenkins_home -jar jenkins.war --httpPort=7788 > jenkins.log 2>&1 &
1.2 Docker 方式
docker compose 参考文件如下
networks:
1panel-network:
external: true
services:
jenkins:
# 容器运行的镜像
image: registry.cn-shenzhen.aliyuncs.com/zhangqintech/jenkins:2.480
# 自定义容器名称
container_name: cicd-jenkins
# 添加环境变量
environment:
TZ: Asia/Shanghai
# 容器总是重新启动
restart: always
# 端口映射
ports:
- 17788:8080
# 配置容器连接的网络
networks:
- 1panel-network
# 以 root 用户身份运行容器
user: root
# 将主机的数据卷或着文件挂载到容器里
volumes:
- "/mydata/volumes/jenkins/data:/var/jenkins_home"
- "/var/run/docker.sock:/var/run/docker.sock"
- "/usr/bin/docker:/usr/bin/docker"
# 部署配置
deploy:
# 资源配置
resources:
limits:
cpus: "0"
memory: "0"
二、初始化配置
首次安装启动后,需要进行初始化配置。跟着提示一步步走即可。
1. 初始化管理员密码
找到文件地址,填写初始的管理员密码即可。
2. 安装插件
首次安装推荐的插件,后续到插件管理中按需安装需要的插件即可。
3. 初始化管理员账号密码等即可。
图略。
三、插件安装
Jenkins内置了插件管理功能,一般情况下我们可以通过 Manage Jenkins -Manage Plugins 来安装和维护我们的插件。但在天朝,经常会出现下载插件超时,原因是镜像源被GFW屏蔽了。那么解决的方法其实也很简单:修改镜像源或者离线安装。
2.1 修改镜像源(推荐)
功能目录:Manage Jenkins -Manage Plugins。
选择“高级”选项卡,页面往下滑,找到Update Site。
2. 把替换链接为清华源https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json
去 Plugin Manager 中下载安装,相关依赖会自动安装。
UpdateCenter 中可看到安装进度和报错原因。
2.2 离线安装
官方插件市场有超过1900个社区贡献的插件,以支持构建、部署和自动化任何项目。离线安装相对繁琐,但一定能成功。以安装 Maven Integration 插件为例:
1. 查找插件
访问地址:https://plugins.jenkins.io/
搜索插件:Maven Integration
2. 下载插件
点击下载链接即可进行下载
下载文件格式为.hpi
3. 安装插件
功能目录:Manage Jenkins -Manage Plugins
4. 常见异常
如果安装报错,根据错误提示进行调整。常见问题为:依赖包安装失败和版本问题。 依赖包安装失败按上面步骤先安装指定依赖包即可,版本问题则选择与当前jenkins版本匹配的插件版本。
四、常见配置
4.1 邮件通知
以腾讯企业邮箱配置为例。
4.1.1 腾讯企业邮箱配置
管理员登录腾讯企业邮箱开启成员邮箱POP/SMTP/IMAP服务
登录企业微信管理端【协作->设置->第三方客户端】开启/修改POP/SMTP服务或者IMAP/SMTP服务范围。
注:管理后台未设置IMAP/SMTP或者POP/SMTP服务范围,那么成员邮箱无法启用IMAP/SMTP或者POP/SMTP服务。
成员开启POP/SMTP/IMAP服务
电脑网页版登录企业邮箱【设置->收发信设置->开启服务】中开启服务。
生成登录密码
4.1.2 Jenkins邮件通知配置
配置系统管理员邮件地址(不要漏了这一步!)
配置邮件通知功能
测试邮件发送