Jenkinsfile + Pipeline
type
status
date
slug
summary
tags
category
icon
password
一、Pipeline 概述
- Pipeline:Jenkins 提供的流水线(Pipeline as Code),通过脚本定义构建、测试、部署等步骤。
- 优点:
- 构建流程可版本化(存放在 Git 仓库里)
- 易维护、易扩展
- 支持参数化、条件化、并行等高级特性
两种语法
- Scripted Pipeline(Groovy 脚本风格)
- Declarative Pipeline(推荐,语法更简洁,结构清晰)
二、Jenkinsfile 基本结构
Declarative Pipeline 的基本框架:
三、常用指令说明
- agent:定义在哪个节点执行(
any/node('label'))
- tools:声明使用的 JDK、Maven 等工具(需在 Jenkins 全局配置)
- environment:设置全局变量(如路径、服务器信息)
- parameters:支持参数化构建(分支选择、项目类型、环境变量)
- stages:构建的各个阶段(Checkout / Build / Deploy)
- when:条件执行(例如仅在分支为
main时部署)
- post:收尾逻辑(成功/失败通知、清理环境)
四、Pipeline 实践流程
1. 代码检出
2. 构建(Maven)
3. 部署 Tomcat 项目
4. 部署 Spring Boot(蓝绿发布)
五、回滚机制
- Tomcat:重新部署上一个 WAR 包
- Spring Boot 蓝绿发布:只需切换
active文件,重启服务即可
六、最佳实践总结
- 代码即流水线:把 Jenkinsfile 存放在 Git 仓库根目录
- 参数化构建:避免硬编码(分支、环境、账号密码用 Credentials)
- 蓝绿/灰度发布:保障服务不中断 & 可快速回滚
- 日志与监控:部署后自动检查端口 & 健康检查接口
- 通知机制:集成企业微信、钉钉或邮件提醒
Loading...