温馨提示×

centos上jenkins部署的步骤详解

小樊
38
2025-12-07 20:27:19
栏目: 智能运维

CentOS 上部署 Jenkins 的步骤详解

一 环境准备与版本选择

  • 操作系统建议:CentOS 7/8/Stream(本文以 systemd 为主,命令需具备 sudo 权限)。
  • Java 版本:当前 Jenkins LTS 要求 Java 11 或 17(推荐 OpenJDK 11/17)。如需使用 Java 8,请选择较老的 Jenkins 版本,但不建议用于生产。
  • 端口规划:默认 8080/TCP(Web 访问),50000/TCP(Agent/JNLP 连接,分布式构建时使用)。

二 安装 Java

  • 安装 OpenJDK(推荐 11 或 17):
    • 安装 OpenJDK 11(CentOS 7/8/Stream 通用):
      • sudo yum install -y java-11-openjdk-devel
    • 验证版本:
      • java -version
      • javac -version
  • 如需使用 Java 17(若仓库提供对应包):
    • sudo yum install -y java-17-openjdk-devel
  • 说明:Jenkins 2.357+ 及后续 LTS 主线已转向 Java 11/17,请优先选择这两个版本以获得更好的兼容性与安全更新。

三 安装 Jenkins(YUM 仓库方式,推荐)

  • 导入官方 GPG 密钥并添加仓库:
    • 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
  • 安装 Jenkins:
    • sudo yum install -y jenkins
  • 说明:仓库方式便于后续通过 yum 升级维护。

四 启动与防火墙配置

  • 启动与开机自启(systemd):
    • sudo systemctl daemon-reload
    • sudo systemctl start jenkins
    • sudo systemctl enable jenkins
    • sudo systemctl status jenkins
  • 防火墙放行端口(默认 8080;如需 Agent 通信,放行 50000):
    • sudo firewall-cmd --permanent --add-port=8080/tcp
    • sudo firewall-cmd --permanent --add-port=50000/tcp
    • sudo firewall-cmd --reload
  • 云服务器注意:除系统防火墙外,还需在云安全组/ACL中放行对应端口。

五 初始化与插件安装

  • 获取初始管理员密码:
    • sudo cat /var/lib/jenkins/secrets/initialAdminPassword
  • 访问 Web 界面:打开浏览器访问 http://服务器IP:8080,粘贴上述密码进入向导。
  • 插件安装建议:
    • 选择安装推荐插件(国内网络可后续更换为国内镜像源以加速)。
    • 常用核心插件(按需):Git plugin、Git client plugin、GitHub plugin、Maven Integration plugin、NodeJS plugin、Docker Pipeline、Publish Over SSH
  • 创建管理员用户并完成实例配置,进入 Jenkins 首页。

六 常见问题与优化

  • Java 版本不匹配导致无法启动:
    • 现象:systemctl status jenkins 报 “Java not found” 或启动失败。
    • 处理:确认已安装 Java 11/17;如需指定特定 Java,可在 /etc/sysconfig/jenkins 中设置 JENKINS_JAVA_CMD,或创建软链接(如 ln -s /usr/bin/java /usr/bin/java)后重启服务。
  • 插件下载慢或失败:
    • 系统管理 → 插件管理 → 高级 将更新站点更换为国内镜像(如清华源),或编辑 hudson.model.UpdateCenter.xml 的更新中心 URL 后重启 Jenkins。
  • 构建资源与并发:
    • 系统配置 中合理设置执行者数量SCM 重试次数静默期全局环境变量,以提升稳定性与效率。
  • 安全与网络:
    • 生产环境建议启用 HTTPS(如 8443/TCP)、限制管理端口访问来源、定期备份 JENKINS_HOME(默认 /var/lib/jenkins)。

0