温馨提示×

centos如何集成jenkins

小樊
42
2026-09-12 04:46:22
栏目: 智能运维

在 CentOS 上“集成 Jenkins”通常指安装 Jenkins 并让它和 CentOS 系统、构建工具、Git、Docker 等协同工作。下面给你一套常用且实用的集成方案,从安装到基本集成。


一、在 CentOS 上安装 Jenkins

1. 安装 Java(Jenkins 依赖)

sudo yum install -y java-11-openjdk-devel
java -version

Jenkins 2.3xx 推荐 Java 11 或 17


2. 添加 Jenkins 官方源

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

3. 安装 Jenkins

sudo yum install -y jenkins

4. 启动并设置开机自启

sudo systemctl enable jenkins
sudo systemctl start jenkins
sudo systemctl status jenkins

5. 开放防火墙端口(默认 8080)

sudo firewall-cmd --permanent --add-port=8080/tcp
sudo firewall-cmd --reload

浏览器访问:

http://<服务器IP>:8080

初始化密码:

sudo cat /var/lib/jenkins/secrets/initialAdminPassword

二、Jenkins 与 CentOS 基础集成

1. Jenkins 使用 CentOS 本地构建环境

在 Jenkins 中执行 shell 命令即可直接使用 CentOS:

#!/bin/bash
yum install -y maven
mvn clean package

2. 集成 Git

sudo yum install -y git

Jenkins 安装插件:

  • Git Plugin
  • GitHub Integration

3. 集成 Docker(非常常见)

sudo yum install -y yum-utils
sudo yum-config-manager --add-repo \
https://download.docker.com/linux/centos/docker-ce.repo

sudo yum install -y docker-ce docker-ce-cli containerd.io
sudo systemctl enable --now docker

将 Jenkins 用户加入 docker 组:

sudo usermod -aG docker jenkins
sudo systemctl restart jenkins

Jenkinsfile 示例:

pipeline {
    agent any
    stages {
        stage('Build') {
            steps {
                sh 'docker build -t myapp .'
            }
        }
    }
}

三、Jenkins 与系统服务集成(部署)

示例:构建后部署到 CentOS 本地

scp target/app.jar user@centos:/opt/app/
ssh user@centos "systemctl restart myapp"

或使用 Jenkins 的 Publish Over SSH 插件。


四、Jenkins + Nginx(可选)

sudo yum install -y nginx

Nginx 反向代理:

location / {
    proxy_pass http://127.0.0.1:8080;
}

五、常见集成场景总结

集成对象 方式
Git Git 插件
Maven 系统安装
Docker docker group
Shell Execute Shell
远程服务器 SSH / Ansible
通知 邮件 / 钉钉 / 企业微信

六、你接下来可以告诉我

为了给你更精准的方案,我可以继续帮你:

  • ✅ CentOS 7 还是 8 / Stream?
  • ✅ Jenkins 用于 Java / 前端 / Python?
  • ✅ 是否用 Docker 部署 Jenkins?
  • ✅ 是否需要 CI/CD 完整示例(Jenkinsfile)

你可以直接说你的使用场景。

0