温馨提示×

centos如何集成jenkins git

小樊
41
2026-10-09 06:02:10
栏目: 智能运维

在 CentOS 上“集成 Jenkins + Git”,通常包含三部分工作:

  1. 安装 Jenkins(CentOS)
  2. 安装并配置 Git
  3. 在 Jenkins 中集成 Git(插件 + 凭证 + 任务)

下面给你一套可直接照着做的流程。


一、安装 Git(CentOS)

sudo yum install -y git
git --version

一般安装路径为 /usr/bin/git


二、安装 Jenkins(CentOS 7/8)

1. 添加 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

2. 安装 Jenkins

sudo yum install -y jenkins

3. 启动 Jenkins

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

4. 开放端口(默认 8080)

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

浏览器访问:

http://服务器IP:8080

三、Jenkins 初始配置

1. 获取初始密码

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

2. 安装推荐插件

  • 选择 Install suggested plugins
  • 其中包含:
    • Git
    • GitHub
    • Pipeline

四、Jenkins 集成 Git

方式一:Freestyle 项目(最简单)

1. 新建任务

  • Jenkins → 新建任务 → Freestyle project

2. 配置 Git

  • 源码管理 → Git
  • Repository URL:
    https://github.com/yourname/yourrepo.git
    
    或
    git@github.com:yourname/yourrepo.git
    

3. 添加 Git 凭证

  • Credentials → 添加
    • Username + Password(HTTPS)
    • 或 SSH Username + Private Key(SSH)

4. 指定分支

*/main

方式二:Pipeline(推荐)

pipeline {
    agent any
    stages {
        stage('Clone') {
            steps {
                git branch: 'main',
                    url: 'https://github.com/yourname/yourrepo.git',
                    credentialsId: 'git-cred'
            }
        }
    }
}

五、Jenkins 指定 Git 路径(如需要)

Jenkins →
Manage Jenkins → Global Tool Configuration → Git

Name: Default
Path to Git executable: /usr/bin/git

六、常见问题

1. Jenkins 无法执行 git

sudo usermod -aG wheel jenkins
sudo chmod 777 /var/lib/jenkins

2. SSH 方式失败

sudo -u jenkins ssh-keygen -t rsa
sudo -u jenkins cat ~/.ssh/id_rsa.pub

把公钥加到 GitHub / GitLab


七、典型使用场景

  • ✅ Git 提交触发 Jenkins 构建
  • ✅ Jenkins 拉代码 → 编译 → 部署
  • ✅ GitLab / GitHub Webhook 集成

如果你告诉我:

  • CentOS 版本(7 / 8 / Stream)
  • Git 类型(GitHub / GitLab / 内网 Git)
  • 是否用 Docker / Pipeline

我可以给你更精确的配置示例。

0 踩