Jenkins + Git + Maven/Gradle 是 Linux 上快速落地 CI 流水线的核心组合;需先安装 Java 11+、Git 和 Docker,再用 Docker 部署 Jenkins,集成 Git 插件与构建工具,通过 Jenkinsfile 定义 Checkout、Build、Test、Archive 阶段,并配置 Webhook 实现代码推送自动触发全流程。

在 Linux 服务器上部署持续集成(CI)流水线,核心是让代码提交后能自动拉取、构建、测试并反馈结果。整个过程不依赖复杂架构,用 Jenkins + Git + 构建工具(如 Maven/Gradle)就能快速落地。
准备基础运行环境
确保服务器已安装以下组件:
-
Java 11 或更高版本:Jenkins 是 Java 应用,需先执行
java -version验证;未安装则用sudo apt install openjdk-17-jdk(Ubuntu/Debian)或yum install java-17-openjdk-devel(CentOS/RHEL) -
Git:用于拉取代码,运行
git --version检查,缺失则安装sudo apt install git -
Docker(可选但推荐):便于后续容器化构建与部署,安装后验证
docker --version和sudo docker run hello-world
部署 Jenkins 服务
推荐使用 Docker 方式部署,省去手动配置依赖和权限问题:
- 拉取长期支持版镜像:
sudo docker pull jenkins/jenkins:lts - 启动容器并挂载数据目录(关键!避免重启丢配置):
sudo docker run -d \-p 8080:8080 -p 50000:50000 \-v /opt/jenkins_home:/var/jenkins_home \-v /var/run/docker.sock:/var/run/docker.sock \--name jenkins-ci \--restart=unless-stopped \jenkins/jenkins:lts - 首次访问
http://[服务器IP]:8080,按提示从/opt/jenkins_home/secrets/initialAdminPassword获取管理员密码完成初始化
配置 Git 与构建工具集成
登录 Jenkins 后,进入 “Manage Jenkins” → “Plugins” 安装必需插件:
- Git plugin:连接 GitHub/GitLab/Gitee 等仓库
- Pipeline:支持用 Jenkinsfile 定义结构化流水线
- GitHub Integration / GitLab Plugin(按实际代码平台选):启用 Webhook 自动触发
- Config File Provider(可选):集中管理 Maven settings.xml、Docker 配置等
接着在 “Global Tool Configuration” 中配置:
- Maven:选择自动安装(如 Apache Maven 3.9.6),或指定已安装路径
-
Git:填入系统级 Git 可执行路径(通常为
/usr/bin/git) - JDK:若未用系统默认 JDK,可添加自定义版本
创建第一个 Pipeline 流水线
新建任务 → 选择 Pipeline 类型 → 在 Pipeline 部分 选择 “Pipeline script from SCM”:
-
SCM 选 Git,填入项目仓库 URL(如
https://gitee.com/xxx/demo.git) - Credentials 添加对应账号密码或 SSH 私钥(建议用 deploy key 提升安全性)
-
Script Path 设为
Jenkinsfile(放在项目根目录)
示例 Jenkinsfile 内容(Gradle + Spring Boot):
agent any
stages {
stage('Checkout') { steps { checkout scm } }
stage('Build') { steps { sh './gradlew clean build' } }
stage('Test') { steps { sh './gradlew test' } }
stage('Archive') { steps { archiveArtifacts 'build/libs/*.jar' } }
}
post {
success { echo "✅ 构建成功" }
failure { echo "❌ 构建失败,请检查日志" }
}
}
保存后点击 “立即构建”,观察控制台输出是否顺利执行各阶段。
接入自动触发(Webhook)
避免手动点构建,让代码一推送就跑流水线:
- 在代码托管平台(如 GitHub)仓库设置 → Webhooks → 添加新 webhook
- Payload URL 填:
http://[服务器IP]:8080/github-webhook/(GitHub)或http://[服务器IP]:8080/project/[任务名](GitLab) - Content type 选
application/json,勾选 “Just the push event” - Jenkins 端需安装对应插件并启用 “GitHub hook trigger for GITScm polling”(Pipeline 任务配置中勾选)
推送一次代码到主分支,即可验证自动触发是否生效。


















