温馨提示×

如何在centos完成jenkins部署

小樊
39
2025-10-30 12:10:07
栏目: 智能运维

一、环境准备

在CentOS上部署Jenkins前,需完成以下基础准备:

  1. 更新系统:确保系统软件包为最新版本,避免兼容性问题。
    sudo yum update -y
    
  2. 安装Java环境:Jenkins基于Java开发,需安装OpenJDK 8或11(推荐11,兼容性更好)。
    sudo yum install -y java-11-openjdk-devel  # 安装OpenJDK 11
    java -version  # 验证安装(需显示Java版本信息)
    

二、添加Jenkins官方仓库

Jenkins需通过官方YUM仓库安装,步骤如下:

  1. 下载并导入GPG密钥:用于验证软件包真实性。
    sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key
    
  2. 创建YUM仓库文件:将Jenkins仓库信息添加至系统。
    sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo
    

三、安装Jenkins

通过YUM包管理器快速安装Jenkins:

sudo yum install -y jenkins

四、配置Jenkins服务

  1. 修改Jenkins端口(可选):若默认8080端口被占用,可修改为其他端口(如9090)。
    编辑配置文件:
    sudo vi /etc/sysconfig/jenkins
    
    找到JENKINS_PORT="8080",修改为JENKINS_PORT="9090"(根据需求调整)。
  2. 设置Jenkins用户:默认运行用户为jenkins,确保其有足够权限(无需修改JENKINS_USER,除非有特殊需求)。
  3. 启动Jenkins服务
    sudo systemctl daemon-reload  # 重新加载systemd配置
    sudo systemctl start jenkins  # 启动Jenkins服务
    sudo systemctl enable jenkins # 设置开机自启动
    

五、访问Jenkins并完成初始化

  1. 获取初始密码:首次启动时,初始管理员密码存储在以下文件中。
    sudo cat /var/lib/jenkins/secrets/initialAdminPassword
    
  2. 访问Web界面:在浏览器中输入http://<服务器IP>:<端口>(如http://192.168.1.100:8080),输入初始密码解锁。
  3. 安装插件:选择“安装推荐插件”(包含Git、Maven等常用工具),或手动搜索安装所需插件(如Pipeline、Docker)。
  4. 创建管理员账户:设置用户名、密码及邮箱,完成Jenkins初始化。

六、配置防火墙(可选但推荐)

若系统启用了firewalld,需允许Jenkins端口访问:

sudo firewall-cmd --permanent --add-port=<端口>/tcp  # 如--add-port=8080/tcp
sudo firewall-cmd --reload

七、后续配置(可选)

  1. 配置国内镜像源:加速插件下载(编辑/var/lib/jenkins/hudson.model.UpdateCenter.xml,将url修改为国内镜像,如清华源)。
  2. 配置Git/Maven:安装Git、Maven并配置环境变量(如MAVEN_HOME),便于构建项目。
  3. 创建Jenkins Job:新建Freestyle或Pipeline项目,配置源码管理(Git)、构建触发器(Webhook)、构建步骤(如mvn clean package)。
  4. 设置分布式构建:若需多节点构建,配置Jenkins Slave节点(通过SSH或JNLP协议连接)。

常见问题解决

  • 无法访问Web界面:检查防火墙是否放行端口、Jenkins服务是否启动(sudo systemctl status jenkins)。
  • Java版本不符:Jenkins 2.357及以上版本需Java 11+,可通过java -version确认版本。
  • 插件安装失败:检查网络连接,或配置国内镜像源加速下载。

通过以上步骤,即可在CentOS系统上完成Jenkins的基础部署与配置,满足持续集成/持续部署(CI/CD)的需求。

0