Jenkins流水线搭建:从零到可运行Pipeline的完整步骤

Jenkins流水线搭建:从零到可运行Pipeline的完整步骤

Jenkins 流水线搭建的核心目标,是把代码拉取、编译、测试、打包、部署这些重复动作,用一份可版本管理的脚本自动串起来。
本文按照零基础用户能照做的顺序,从安装 Jenkins 开始,到写出第一条可运行的 Pipeline,并给出每一步的验证方法和常见报错处理。

适用环境:Linux 服务器(Ubuntu 20.04 及以上或 CentOS 7 及以上),具备 sudo 权限,服务器能访问外网。
如果你使用 Windows,建议在 WSL2 中操作,命令基本一致。

一、先把 Jenkins 环境准备好

Jenkins 依赖 Java 运行环境。
当前 Jenkins 较新版本通常要求 Java 11 或 Java 17,具体以你安装的 Jenkins 版本说明为准。
下面以 Ubuntu 为例。

安装 Java:

sudo apt update
sudo apt install -y openjdk-17-jdk
java -version

如果 java -version 输出 17.x,说明 Java 就绪。

添加 Jenkins 软件源并安装:

curl -fsSL https://pkg.jenkins.io/debian-stable/jenkins.io-2023.key | sudo tee /usr/share/keyrings/jenkins-keyring.asc > /dev/null
echo "deb [signed-by=/usr/share/keyrings/jenkins-keyring.asc] https://pkg.jenkins.io/debian-stable binary/" | sudo tee /etc/apt/sources.list.d/jenkins.list > /dev/null
sudo apt update
sudo apt install -y jenkins

启动并设置开机自启:

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

看到 active (running) 表示 Jenkins 已启动。
默认监听 8080 端口,在浏览器访问 http://你的服务器IP:8080。

解锁 Jenkins:

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

把输出的密码粘贴到页面中,选择“安装推荐的插件”,等待插件安装完成,创建管理员账号。

注意:如果服务器开启了防火墙,需要放行 8080 端口。
使用云服务器时,还要在安全组中放行该端口。

二、创建第一条 Pipeline 任务

Jenkins 流水线有两种常见写法:Pipeline script(直接写在任务里)和 Pipeline script from SCM(从代码仓库读取 Jenkinsfile)。
生产环境更推荐后者,因为脚本能跟随代码一起做版本管理。

先创建一条最简单的 Pipeline,确认环境可用:

  1. 在 Jenkins 首页点击“新建任务”。
  2. 输入任务名称,例如 demo-pipeline,选择“流水线”,点击确定。
  3. 在“流水线”区域,定义选择“Pipeline script”。
  4. 在脚本框中粘贴以下内容:
pipeline {
    agent any
    stages {
        stage('拉取代码') {
            steps {
                echo '正在拉取代码...'
            }
        }
        stage('构建') {
            steps {
                echo '正在执行构建...'
            }
        }
        stage('部署') {
            steps {
                echo '正在执行部署...'
            }
        }
    }
    post {
        always {
            echo '流水线执行结束'
        }
    }
}
  1. 点击“保存”,然后点击“立即构建”。
  2. 在“构建历史”中点击本次构建编号,选择“控制台输出”。

如果看到三个阶段依次输出对应文字,并在最后输出“流水线执行结束”,说明 Jenkins 流水线搭建的基础环境已经跑通。

三、把 Jenkinsfile 放到代码仓库

实际项目中,流水线脚本应该跟代码放在一起。
在项目根目录创建 Jenkinsfile 文件,内容可以参考下面这个结构:

pipeline {
    agent any
    parameters {
        string(name: 'BRANCH', defaultValue: 'main', description: '要构建的分支')
    }
    stages {
        stage('检出代码') {
            steps {
                git branch: "${params.BRANCH}", url: 'https://你的代码仓库地址.git'
            }
        }
        stage('编译') {
            steps {
                echo '这里替换为实际的编译命令,例如 mvn clean package'
            }
        }
        stage('测试') {
            steps {
                echo '这里替换为实际的测试命令'
            }
        }
        stage('归档产物') {
            steps {
                archiveArtifacts artifacts: 'target/*.jar', allowEmptyArchive: true
            }
        }
    }
}

然后回到 Jenkins 任务配置中,把“流水线”区域改为“Pipeline script from SCM”:

  • SCM 选择 Git
  • 填写仓库地址
  • 脚本路径保持默认 Jenkinsfile

保存后再次构建,Jenkins 会从仓库拉取代码并执行 Jenkinsfile 中定义的阶段。

容易踩的坑:

  • 仓库地址使用 HTTPS 时,需要配置凭据;使用 SSH 时,要把 Jenkins 的公钥加到代码平台。
  • 分支名要和实际仓库一致,默认的 main 或 master 写错会导致检出失败。
  • archiveArtifacts 的路径要跟实际构建产物匹配,路径不对会提示找不到文件。

四、构建结果怎么验证

每次构建结束后,不要只看“成功”两个字,建议按下面几项检查:

  • 控制台输出中每个 stage 是否都有明确的开始和结束标记
  • 构建产物是否出现在任务页面的“构建产物”区域
  • 如果配置了部署步骤,目标服务器上的服务是否真的更新
  • 构建耗时是否在合理范围,明显变慢时检查是否重复下载依赖

如果构建失败,先看控制台输出中第一个报错行,再根据报错类型处理。
常见情况包括:命令不存在、权限不足、网络超时、凭据错误。

五、几个常见疑问

Jenkins 流水线和普通任务有什么区别?
普通任务通常通过页面勾选配置,流水线把整个流程写成代码,能纳入版本管理,也更容易复制和排查。

一定要用 Jenkinsfile 吗?
不是必须,但推荐使用。直接在页面里写脚本适合临时验证,长期维护还是放在仓库里更稳妥。

构建时提示权限不足怎么办?
先确认 Jenkins 运行用户(通常是 jenkins)对工作目录和构建产物路径有读写权限,再看是否需要给部署目标配置凭据。

流水线执行成功但部署没生效怎么办?
检查部署阶段的命令是否真的执行了,以及目标服务是否重启。可以在部署步骤后加一条 echo 或检查命令,确认输出和实际状态一致。

总结

Jenkins 流水线搭建并不复杂,关键是先把 Java 和 Jenkins 服务跑起来,再用最简单的 Pipeline 确认环境通,最后把 Jenkinsfile 放进代码仓库,逐步替换成真实的编译、测试和部署命令。
整个过程建议每完成一步就验证一次,不要一次性写完所有阶段再调试,否则报错时很难定位是哪一步出的问题。

分享到:
上一篇
监控告警接入企业微信:群机器人 Webhook 配置与排错
下一篇
GitLab Runner配置:从安装到跑通第一条流水线
1
系统公告

泽御云中秋国庆双节活动上线:新购8折,拼团3.99元起

尊敬的用户:
泽御云“月满中秋·礼贺国庆”双节活动现已开启,活动时间为2026年9月23日至10月10日。 活动期间可享以下福利:
1. 常规云服务器新购使用优惠码“泽御中秋国庆同乐”,符合条件的订单享8折优惠。
2. 香港精品云服务器5人拼团低至3.99元,部分4核4G套餐3人拼团年付388元,续费同价。
3. 新用户购买年付云服务器,符合活动规则可赠送2个月使用时长。
4. 老用户续费季度赠15天,续费年度赠2个月;活动期间升级配置免收配置迁移手续费。
5. 推荐好友成功下单,符合条件的推荐人可获赠7天服务器使用时长。
6. 活动期间享宕机补偿标准翻倍、简单网站迁移协助及技术工单优先处理权益。
温馨提示:优惠码不适用于拼团套餐、活动轻量产品、年付订单及续费订单;拼团套餐为独立特价活动,不与赠时类福利叠加。赠送时长不可折现、退款或跨账户转移,具体规则以活动页面说明为准。
服务中心
客服
在线客服
24小时为您服务
咨询
联系我们
联系我们,为您的业务提供专属服务。
24/7 技术支持
如果您遇到寻求进一步的帮助,请过工单与我们进行联系。
24/7 即时支持
泽御云
售前客服
泽御云
泽御云
售后客服
泽御云
技术支持
评价
您对当前页面的整体感受是否满意?
😞
非常不满意
😕
不满意
😐
一般
🙂
满意
😊
非常满意