文章目录
-
-
- [一、Jenkins 的简介](#一、Jenkins 的简介)
- 二、Jenkins的安装
- [三、Jenkins 文件夹的作用](#三、Jenkins 文件夹的作用)
- [四、Jenkins 的应用](#四、Jenkins 的应用)
-
- [新建 job](#新建 job)
- [配置 job](#配置 job)
- [jenkins 集成 Allure 报告。](#jenkins 集成 Allure 报告。)
- [jenkins 集成 HTML 的报告](#jenkins 集成 HTML 的报告)
- [五、Jenkins 发送电子邮件](#五、Jenkins 发送电子邮件)
-
- [1)安装插件:Email Extension](#1)安装插件:Email Extension)
- [2)开启 POP3/SMTP 服务](#2)开启 POP3/SMTP 服务)
- 3)获得邮箱的客户端密码
- 4)配置邮箱的发件人,SMTP服务器,收件人等信息。
- [5)在 job 里面配置:构建后的操作](#5)在 job 里面配置:构建后的操作)
- [六、Jenkins 定时任务](#六、Jenkins 定时任务)
- [七、Jenkins 持续部署 CD](#七、Jenkins 持续部署 CD)
-
一、Jenkins 的简介
它是一个可以扩展的持续集成CI和持续部署CD的平台,它只是平台,主要的运作的是插
件。
主要作用:
持续的监控项目版本的发布。实现持续部署CD
监控外部的定时任务。
二、Jenkins的安装
查看文章: jenkins 持续集成环境从0到1搭建全过程
三、Jenkins 文件夹的作用

- jobs:构建作业(job)的配置细节,以及运行作业时的产物和数据。
- logs:日志
- nodes:节点配置
- plugins:插件
- Allure jenkens Plugin 解决allure报告和jenkins集成的插件。
- HTML publisher 集成HTML报告的插件
- RobotFrameowrk 集成RF
- Zentimestamp 集成日期和时间
- Email Extesion plugin 集成电子邮件
- Groovy 解决自动化报告样式丢失的插件
- secrets 存放秘钥
- updates 存放更新的插件
- userContent 定制化的内容
- users 用户信息
- war 存放web应用程序
- workspace 默认工作空间。
四、Jenkins 的应用
新建 job

配置 job
-
- 配置自定义的工作空间

- 配置自定义的工作空间
-
- 构建命令

- 构建命令
jenkins 集成 Allure 报告。
-
- 安装 allure 插件
- Manage Jenkins->Plugins

- Available Plugins -> 搜索插件并安装

-
- 在【全局工具配置】,设置 Allure
- Manage Jenkins->Tools

- Allure Commandline->配置 Allure

-
- 在 job 里面配置:构建后的操作
- Configuration->Post-build Actions

- Add post-build actions ->Allure Report

- Add post-build actions ->Allure Report-> 配置临时文件夹(也就是存放log的文件夹)
- Advanced -> 配置报告文件夹位置

- Advanced -> 配置报告文件夹位置
-
- 配置完成后,重新运行,点击 报告即可查看

- 配置完成后,重新运行,点击 报告即可查看
jenkins 集成 HTML 的报告
-
1)安装 HTML publisher 插件
-
2)配置job里面的【构建后操作】

-
3)配置【构建】,选择输入一下脚本解决HTML报告样式丢失的问题:
System.setProperty("hudson.model.DirectoryBrowserSupport.CSP","")
五、Jenkins 发送电子邮件
1)安装插件:Email Extension
2)开启 POP3/SMTP 服务

3)获得邮箱的客户端密码

4)配置邮箱的发件人,SMTP服务器,收件人等信息。
-
配置系统管理员的邮箱:Manage Jenkins->System->System Admin e-mail address
- 填写:和发件人邮箱保持一致

- 填写:和发件人邮箱保持一致
-
配置发件人信息:Manage Jenkins->System->Extended E-mail Notification

-
配置收件人信息&邮件的标题和内容:

-
邮件的服务器和后缀:Manage Jenkins->System->E-mail Notification

-
邮件参数解释:
*- Default Content Type
-
含义:默认邮件内容格式
-
选项:Plain Text (text/plain) 是纯文本格式,也可按需选 HTML 格式(若支持),决定邮件正文的解析方式
-
- List ID
- 含义:邮件列表标识
- 作用:给批量发送的邮件标记统一 ID(类似邮件列表的 "分组名" ),方便收件箱规则识别、归类
-
- Add 'Precedence: bulk' E-mail Header
- 含义:添加 "批量邮件" 头信息
- 作用:勾选后,邮件头会带 Precedence: bulk ,提示收件箱这是批量发送的邮件,部分邮箱会据此调整拦截策略(如降低进垃圾箱概率)
-
- Default Recipients
- 含义:默认收件人
- 用法:填邮箱地址(多个用逗号分隔),作为全局默认收件人,项目级配置未指定时会用这里的地址
-
- Reply To List
- 含义:回复邮件的目标地址
- 作用:指定 "回复邮件" 时默认发到哪个邮箱,可设邮件列表地址或统一回复邮箱
-
- Emergency reroute
- 含义:紧急转发地址
- 作用:极端情况(如主收件系统故障)下,邮件会转发到这里的地址,保障通知不丢失
-
- Allowed Domains
- 含义:允许的收件域名
- 作用:填域名(如 yourcompany.com ),限制只有该域名的邮箱能收邮件,避免误发到外部
-
- Excluded Recipients
- 含义:排除的收件人
- 用法:填邮箱地址,即使在默认 / 项目收件人里,这些地址也不会收到邮件(用于临时屏蔽)
-
- Default Subject
- 含义:默认邮件主题
- 示例:KaTeX parse error: Expected 'EOF', got '#' at position 22: ...T_NAME - Build #̲BUILD_NUMBER - $BUILD_STATUS! 是 Jenkins 变量,自动替换为 项目名、构建编号、构建状态 ,让主题动态体现构建结果
-
- Maximum Attachment Size
- 含义:最大附件大小
- 说明:-1 表示不限制大小,也可填数值(如 10 代表 10MB ),控制邮件附件的上限
-
邮件内容格式参考:
标题:【构建通知】:PROJECT_NAME - Build # BUILD_NUMBER - $BUILD_STATUS!
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>${ENV, var="JOB_NAME"}-第${BUILD_NUMBER}次构建日志</title> </head> <body leftmargin="8" marginwidth="0" topmargin="8" marginheight="4" offset="0">
内容:本邮件由系统自动发出,无需回复!
各位同事,大家好,以下为${PROJECT_NAME }项目构建信息构建结果 - ${BUILD_STATUS}
构建信息- 项目名称 : ${PROJECT_NAME}
- 构建编号 : 第${BUILD_NUMBER}次构建
- 触发原因: ${CAUSE}
- 构建状态: ${BUILD_STATUS}
- 构建日志: ${BUILD_URL}console
- 构建 Url : ${BUILD_URL}
- 工作目录 : ${PROJECT_URL}ws
- 项目 Url : ${PROJECT_URL}
失败用例
$FAILED_TESTS
最近提交(#$SVN_REVISION)
-
${CHANGES_SINCE_LAST_SUCCESS, reverse=true, format="%c", changesFormat="
- %d [%a] %m "}
</body> </html></td> </tr> </table>5)在 job 里面配置:构建后的操作
- configure->Add post-build action->Editable Email Notification:

- Andvanced Settings->Triggers->Add Trigger(注意把构建失败才发送的默认配置给去掉再添加)

- 修改触发的方式,默认是失败触发,改成总是触发 Always:

- 保存配置,重新运行完成后,便可接收到邮件
六、Jenkins 定时任务
- configure->Triggers->Build periodically
- 五星大法:* * * * * [分 时 日 月 年]
- 比如下图是每天的 11:34 自动触发运行

七、Jenkins 持续部署 CD
- 手工发布版本:
开发1.0,代码和数据库导出,部署到测试环境。
开发2.0,代码和数据库导出,部署到测试环境。
... - 持续部署:
- configure->Source Code Management:

- 根据上图提示,配置完项目克隆的 git 仓库地址和拉取分支,下次在 build 项目时,会拉取仓库上对应分支的最新代码,然后再运行,这样便可完成持续部署
- configure->Source Code Management:
相关推荐庚昀◟5 小时前腾讯云 CVM + Docker + Jenkins + GitLab CI/CD 全流程指南(python、flask实现简单计算器)牛奶咖啡137 小时前CI/CD——使用Jenkins实现自动化部署与持续集成测试那点事儿1 天前第10章 零基础接口自动化到 Jenkins 持续集成【定时监控与邮件告警完整落地】a***72891 天前Java进阶(ElasticSearch的安装与使用)WaiSaa2 天前Ubuntu配置Git免密操作砍材农夫2 天前借助gitee仓库构建私有图床摇滚侠2 天前黑马 Elasticsearch 全套教程,黑马旅游网案例行者-全栈开发2 天前Linux 核弹级高危漏洞 CVE-2026-31431 完整修复指南身如柳絮随风扬2 天前使用 Docker 部署 Jenkins 并实现自动化部署 —— 从零到一的 CI/CD 实践指南醉颜凉2 天前Elasticsearch高阶聚合实战:Pipeline Aggregation 用法详解与典型场景全攻略热门推荐01要裂开了!ChatGPT要手机号验证了?注册Codex要求验证电话号码怎么办?2026年登陆Codex要手机号验证的解决办法02GitHub 镜像站点03Codex 接入 DeepSeek API 完整配置文档04【AI】2026 年具身智能模型和世界模型总结05裂开!ChatGPT 居然开始要手机号验证,附详细解决方法06零基础教你claude code 接入 deepseek V4072026年AI前瞻:量子AI、具身智能与科学发现的新纪元08在Windows 11上安装Docker的踩坑记录09CC-Switch & Claude 基于 Linux 服务器安装使用指南10CVE-2026-31431 (Copy Fail) 漏洞复现与验证记录