如何通过CentOS配置Jenkins的持续集成流程
导读:一、环境准备 在CentOS上配置Jenkins持续集成前,需完成以下基础准备: 更新系统:运行sudo yum update -y确保系统软件包为最新版本。 安装Java环境:Jenkins依赖Java运行,推荐安装OpenJDK 11...
一、环境准备
在CentOS上配置Jenkins持续集成前,需完成以下基础准备:
- 更新系统:运行
sudo yum update -y
确保系统软件包为最新版本。 - 安装Java环境:Jenkins依赖Java运行,推荐安装OpenJDK 11(或更高版本),命令:
sudo yum install -y java-11-openjdk-devel
;验证安装:java -version
(需显示Java版本信息)。 - 安装基础工具:安装
wget
用于下载文件,命令:sudo yum install -y wget
。
二、安装Jenkins
1. 添加Jenkins官方仓库
- 下载Jenkins的YUM源配置文件:
sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo
。 - 导入Jenkins的GPG密钥(用于验证软件包完整性):
sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key
。
2. 安装Jenkins
运行以下命令通过YUM包管理器安装Jenkins:sudo yum install -y jenkins
。
3. 启动Jenkins服务
- 启动Jenkins服务:
sudo systemctl start jenkins
。 - 设置开机自启:
sudo systemctl enable jenkins
。
4. 配置防火墙(可选但推荐)
若服务器开启了防火墙,需开放Jenkins默认端口(8080),命令:sudo firewall-cmd --permanent --add-port=8080/tcp
;重载防火墙规则:sudo firewall-cmd --reload
。
三、初始化配置Jenkins
- 解锁Jenkins:首次访问Jenkins(
http://< 服务器IP> :8080
)时,需输入初始密码。密码位于/var/lib/jenkins/secrets/initialAdminPassword
文件中,通过命令cat /var/lib/jenkins/secrets/initialAdminPassword
查看并复制。 - 安装插件:选择“安装推荐插件”(包含Git、Maven、Pipeline等常用插件),或手动选择所需插件(如Docker、SonarQube等)。
- 创建管理员账号:设置用户名、密码及邮箱,完成管理员账户创建。
- 配置全局工具:进入“系统管理”→“全局工具配置”,配置以下工具:
- JDK:指定JDK安装路径(若通过YUM安装,路径为
/usr/lib/jvm/java-11-openjdk
)。 - Git:填写Git安装路径(若通过YUM安装,路径为
/usr/bin/git
)。 - Maven:填写Maven安装路径(若未安装,需先通过YUM或手动安装,路径如
/usr/local/maven
)。
- JDK:指定JDK安装路径(若通过YUM安装,路径为
四、配置必要插件
- Git插件:用于拉取代码仓库(如GitHub、GitLab),默认已包含在推荐插件中。
- Maven插件:用于执行Java项目的构建命令(如
mvn clean package
),默认已包含在推荐插件中。 - Pipeline插件:用于定义CI/CD流水线(支持声明式或脚本式Pipeline),可通过“系统管理”→“插件管理”→“可选插件”搜索安装。
- 可选插件:根据项目需求安装Docker插件(用于容器化部署)、SonarQube插件(用于代码质量检查)等。
五、创建Jenkins Job
- 新建Job:进入Jenkins首页,点击“新建Item”,输入Job名称(如
my-java-project
),选择“Freestyle project”(适合简单项目)或“Pipeline”(适合复杂流水线),点击“确定”。 - 配置源码管理:
- 选择“Git”,填写代码仓库URL(如
https://github.com/username/repo.git
)。 - 若仓库为私有,需点击“添加”→“Jenkins”配置Git凭证(选择“Username with password”或“SSH Username with private key”)。
- 指定分支(如
*/main
或*/develop
)。
- 选择“Git”,填写代码仓库URL(如
- 配置构建触发器:
- 轮询SCM:设置定时轮询代码仓库(如
H/5 * * * *
表示每5分钟检查一次)。 - Webhook:更推荐的方式,在代码仓库(如GitHub)中配置Webhook(URL为
http://< 服务器IP> :8080/github-webhook/
),当代码推送时自动触发构建。
- 轮询SCM:设置定时轮询代码仓库(如
- 配置构建步骤:
- 对于Maven项目,添加“Invoke top-level Maven targets”步骤,填写Maven目标(如
clean package
)。 - 对于Shell脚本项目,添加“Execute shell”步骤,编写自定义命令(如
npm install & & npm run build
)。
- 对于Maven项目,添加“Invoke top-level Maven targets”步骤,填写Maven目标(如
- 保存Job:点击“保存”,返回Job首页。
六、运行Jenkins Job
- 手动触发:进入Job首页,点击“立即构建”,查看构建进度(点击“构建历史”→“控制台输出”查看详细日志)。
- 自动触发:若配置了Webhook,当代码推送至仓库时,Jenkins会自动触发构建。
七、可选:配置分布式构建(提升构建效率)
若项目需要并行构建或隔离环境,可配置Jenkins分布式构建:
- 安装Jenkins代理:在其他服务器(或同一服务器的不同用户)上安装Jenkins代理,运行
java -jar agent.jar -jnlpUrl http://< Jenkins服务器IP> :8080/computer/< 代理名称> /slave-agent.jnlp -secret < 代理密钥> -workDir "/var/jenkins_agent"
(代理密钥可在Jenkins“系统管理”→“节点管理”→“新建节点”中获取)。 - 配置代理:在Jenkins“系统管理”→“节点管理”中,点击“新建节点”,输入节点名称(如
agent1
),选择“Permanent Agent”,填写远程工作目录(如/var/jenkins_agent
),点击“确定”。
八、注意事项
- 权限管理:遵循最小权限原则,避免使用root用户运行Jenkins(可通过修改
/etc/sysconfig/jenkins
中的JENKINS_USER
为普通用户,如jenkins
)。 - 安全性:启用HTTPS(通过Nginx/Apache反向隧道)、安装安全插件(如“Role-based Authorization Strategy”控制用户权限)、定期更新Jenkins及插件。
- 备份:定期备份Jenkins配置文件(
/var/lib/jenkins
)及作业数据,防止数据丢失。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: 如何通过CentOS配置Jenkins的持续集成流程
本文地址: https://pptw.com/jishu/725137.html