Debian系统Jenkins部署详细步骤
确保Debian系统已联网且具备root或sudo权限,建议使用Debian 10及以上稳定版本。
Jenkins是基于Java的持续集成工具,需先安装Java运行环境(推荐OpenJDK 11):
# 更新系统软件包列表
sudo apt update && sudo apt upgrade -y
# 安装OpenJDK 11 JDK
sudo apt install openjdk-11-jdk -y
# 验证Java安装(需显示版本信息)
java -version
若未正确显示版本,需检查Java安装路径(如/usr/lib/jvm/java-11-openjdk-amd64)并配置环境变量。
为确保安装最新稳定版Jenkins,需添加Jenkins官方APT仓库:
# 下载并导入Jenkins GPG密钥(用于验证软件包完整性)
wget -q -O - https://pkg.jenkins.io/debian/jenkins.io.key | sudo apt-key add -
# 添加Jenkins Debian仓库到源列表
echo "deb http://pkg.jenkins.io/debian-stable binary/" | sudo tee /etc/apt/sources.list.d/jenkins.list
# 更新APT包列表以包含Jenkins仓库
sudo apt update
注意:
apt-key命令在较新Debian版本中可能被弃用,替代方案是将密钥保存到/etc/apt/trusted.gpg.d/目录(如sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/jenkins.gpg https://pkg.jenkins.io/debian/jenkins.io.key)。
通过APT包管理器安装Jenkins:
# 安装Jenkins(自动解决依赖)
sudo apt install jenkins -y
安装完成后,Jenkins服务会自动启动(若未启动,可通过sudo systemctl start jenkins手动启动)。
配置Jenkins开机自启动并检查服务状态:
# 设置Jenkins开机自启动
sudo systemctl enable jenkins
# 启动Jenkins服务
sudo systemctl start jenkins
# 检查Jenkins服务状态(需显示"active (running)")
sudo systemctl status jenkins
若服务未启动,需排查日志(journalctl -u jenkins -f)定位问题。
首次访问Jenkins需通过初始密码解锁并创建管理员账户:
# 查看初始管理员密码(需用sudo权限)
sudo cat /var/lib/jenkins/secrets/initialAdminPassword
复制输出的密码,在浏览器中访问http://<服务器IP>:8080,输入密码完成解锁。后续步骤需:
http://<服务器IP>:8080)。若系统启用了UFW防火墙,需开放Jenkins默认端口(8080):
# 允许Jenkins端口通过防火墙
sudo ufw allow 8080
# 检查防火墙规则(需显示"8080/tcp ALLOW")
sudo ufw status
若使用其他防火墙(如iptables),需相应添加规则。
创建Pipeline任务实现自动化构建、测试、部署:
my-app-pipeline),选择“Pipeline”,点击“OK”;https://github.com/your-repo.git)及凭据(若有私有仓库);Jenkinsfile);示例Pipeline脚本(Jenkinsfile):
pipeline {
agent any // 使用任意可用节点
stages {
stage('拉取代码') {
steps {
git 'https://github.com/your-repo.git' // 拉取代码
}
}
stage('运行测试') {
steps {
sh 'python -m pytest tests/' // 执行测试
}
}
stage('构建打包') {
steps {
sh 'python setup.py build' // 构建项目
}
}
stage('部署') {
steps {
sh './deploy.sh' // 执行部署脚本
}
}
}
post {
always {
mail to: 'team@example.com', subject: "构建完成: ${currentBuild.fullDisplayName}", body: "构建状态: ${currentBuild.result}" // 发送邮件通知
}
}
}
可根据实际需求修改脚本(如替换为Maven、Docker等命令)。
JAVA_HOME(如/usr/lib/jvm/java-11-openjdk-amd64)、MAVEN_HOME等环境变量;/var/lib/jenkins目录(包含Jenkins配置、任务、日志等)。按照上述步骤操作,即可在Debian系统上完成Jenkins的基础部署与配置。部署后需根据实际项目需求调整流水线脚本及插件设置。