温馨提示×

centos怎样集成jenkins git

小樊
48
2026-10-15 02:08:53
栏目: 智能运维

在 CentOS 上“集成 Jenkins + Git”,通常包含三部分:安装 Jenkins、安装 Git、在 Jenkins 中配置 Git 并拉取代码。下面给你一套常用且可落地的步骤(以 CentOS 7/8 为例,Jenkins 2.x)。


一、安装 Git(CentOS)

sudo yum install -y git
# 或 CentOS 8
sudo dnf install -y git

git --version

二、安装 Jenkins(CentOS)

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. 安装 JDK(Jenkins 依赖)

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

3. 安装 Jenkins

sudo yum install -y jenkins

4. 启动 Jenkins

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

默认端口:8080


三、初始化 Jenkins

浏览器访问:

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

查看初始密码:

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

按提示:

  • 安装推荐插件
  • 创建管理员账号

四、Jenkins 集成 Git(核心步骤)

1. 确保 Jenkins 能找到 Git

Jenkins → Manage Jenkins → Global Tool Configuration

  • 找到 Git
  • Name: Default
  • Path to Git executable: /usr/bin/git

可用 which git 查看路径


2. 安装 Git 插件(一般默认已装)

Manage Jenkins → Manage Plugins

  • 搜索 Git plugin
  • 确保已安装

3. 创建 Jenkins 任务拉取 Git 代码

新建任务

  • New Item → Freestyle project
  • 源码管理选择 Git

填写:

Repository URL:
https://github.com/xxx/xxx.git
# 或 SSH: git@github.com:xxx/xxx.git

Credentials:
添加 Git 用户名/密码 或 SSH Key

五、Jenkins 使用 SSH 方式拉取 Git(推荐)

1. 生成 SSH Key

sudo -u jenkins ssh-keygen -t rsa -C "jenkins"

2. 添加公钥到 Git

cat /var/lib/jenkins/.ssh/id_rsa.pub

复制到:

  • GitHub / GitLab → SSH Keys

3. Jenkins 添加私钥

Credentials → System → Global credentials

  • Kind: SSH Username with private key
  • Username: git
  • Private Key: 粘贴 /var/lib/jenkins/.ssh/id_rsa

六、测试 Jenkins + Git

在 Job 中:

  • Build Steps → Execute shell
git log -1
pwd
ls

构建后查看控制台输出,能看到 commit 信息即成功。


七、常见问题

1. git: command not found

which git

并在 Jenkins Git 配置中写绝对路径

2. 权限问题

sudo chown -R jenkins:jenkins /var/lib/jenkins/.ssh

3. 防火墙

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

如果你是指:

  • Jenkins 自动触发 Git 提交构建
  • GitLab / GitHub Webhook 集成
  • Pipeline 方式集成 Git

可以告诉我你的具体使用场景,我可以给你更针对性的配置示例。

0 踩