CentOS上Jenkins部署全流程
确保系统为CentOS 7及以上版本(兼容性要求):
cat /etc/centos-release 安装wget(用于下载文件)和Java(Jenkins依赖的运行环境,推荐OpenJDK 11及以上):
sudo yum install -y wget java-11-openjdk-devel 验证Java安装是否成功:
java -version 输出应包含Java版本信息(如openjdk version "11.0.xx")。
sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo 用于验证软件包完整性,避免恶意篡改:
sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key 使用YUM包管理器安装Jenkins(自动解决依赖关系):
sudo yum install -y jenkins 若需手动安装特定版本,可先下载RPM包再安装(非推荐):
wget https://get.jenkins.io/redhat-stable/jenkins-x.x.x.noarch.rpm sudo rpm -ivh jenkins-x.x.x.noarch.rpm 编辑/etc/sysconfig/jenkins,调整关键参数:
JENKINS_PORT="8080"改为自定义端口(如8090,避免冲突);JENKINS_USER="jenkins"改为root(解决权限问题,如访问/var/lib/jenkins目录);JENKINS_HOME="/var/lib/jenkins"(默认数据存储路径,可保留)。若系统有多个Java版本,需编辑/etc/init.d/jenkins,修改JAVA_HOME为实际JDK路径(如/usr/lib/jvm/java-11-openjdk):
sudo vi /etc/init.d/jenkins 找到JAVA_HOME行,取消注释并修改路径。
sudo systemctl start jenkins # 启动服务 sudo systemctl enable jenkins # 设置开机自启 确认服务运行正常(输出应包含Active: active (running)):
sudo systemctl status jenkins 开放Jenkins监听端口(默认8080,若修改过端口则替换为自定义端口),允许外部访问:
sudo firewall-cmd --permanent --add-port=8080/tcp # 开放端口 sudo firewall-cmd --reload # 重新加载防火墙规则 首次访问需输入初始密码,密码位于/var/lib/jenkins/secrets/initialAdminPassword文件中:
cat /var/lib/jenkins/secrets/initialAdminPassword 复制输出的密码(如599ad742855948e0b8af280ad2e1f09f)。
在浏览器中输入http://<服务器IP>:8080(若修改过端口则替换为自定义端口),输入初始密码完成解锁。
解锁后,选择“安装推荐插件”(如Git、Maven、Pipeline等),快速搭建基础构建环境;也可手动选择插件安装。
安装完成后,创建管理员账号(填写用户名、密码、全名、邮箱),替代默认的admin用户(提升安全性)。
编辑/var/lib/jenkins/hudson.model.UpdateCenter.xml,将url修改为国内镜像(如清华源):
sudo vi /var/lib/jenkins/hudson.model.UpdateCenter.xml 替换为:
<url>https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json</url> 保存后重启Jenkins:
sudo systemctl restart jenkins 安装OpenSSH服务器:
sudo yum install -y openssh-server 启动并设置开机自启:
sudo systemctl start sshd sudo systemctl enable sshd 创建Jenkins专用用户(如jenkins)并设置密码:
sudo adduser jenkins sudo passwd jenkins 配置SSH权限(编辑/etc/ssh/sshd_config,添加AllowUsers jenkins),重启SSH服务:
sudo systemctl restart sshd 创建备份目录:
sudo mkdir -p /var/backup/jenkins 设置每天凌晨2点自动备份(使用crontab):
sudo crontab -e 添加以下内容:
0 2 * * * /usr/bin/tar -czvf /var/backup/jenkins/$(date +\%F).tar.gz /var/lib/jenkins 保存后,备份文件将保存在/var/backup/jenkins目录下(按日期命名)。
/etc/sysconfig/jenkins中的JENKINS_PORT值,重启服务。/var/lib/jenkins目录,使用chown -R jenkins:jenkins /var/lib/jenkins修改所有权。JAVA_HOME not found,编辑/etc/init.d/jenkins修改JAVA_HOME路径。