Jenkins 简介

149 阅读2分钟

✅ Jenkins 简介

Jenkins 是一个开源的自动化服务器,主要用于实现 持续集成(CI)持续交付(CD) 。它帮助开发团队自动构建、测试、部署代码,提高开发效率、减少人为错误。


🔧 核心功能

功能模块描述
💡 持续集成(CI)自动检测代码变更,自动构建和测试项目
🚀 持续交付(CD)自动将构建结果部署到测试或生产环境
🔁 流水线(Pipeline)支持声明式或脚本式流水线定义,复杂流程可视化
🔌 插件系统拥有丰富插件库,支持 Git、Maven、Docker、Kubernetes 等
👥 多用户协作支持权限控制与用户管理
📦 支持多语言构建Java、Python、Node.js、.NET 等主流语言均可使用

🏗️ 架构组成

  • Jenkins Master:主节点,负责调度构建任务、分发任务、监控执行状态;
  • Jenkins Agent(Slave) :工作节点,执行实际构建工作(支持分布式);
  • 插件系统:实现构建工具、SCM、通知、部署等功能扩展。

📌 使用场景

  • 自动化构建 Java/Python/Node.js 项目
  • 自动化部署到测试/生产服务器(Docker/K8s)
  • 与 Git(GitHub、GitLab)联动,触发构建
  • 每日构建、定时构建、回归测试自动化
  • 提交即测试、测试即部署

🧩 常用插件

插件名称用途
Git Plugin拉取 Git 仓库代码
Pipeline Plugin编写流水线脚本
Docker Plugin在容器中构建和部署
Email Extension构建通知邮件发送
Blue Ocean可视化流水线 UI
Credentials Plugin安全管理用户名、密码、密钥等

📦 Jenkins 与 CI/CD 工具对比

工具特点
Jenkins插件丰富、社区活跃、灵活性强
GitLab CI集成于 GitLab,配置简单
GitHub Actions与 GitHub 集成紧密,适合开源项目
CircleCI云端友好、易于上手

✅ 总结

Jenkins 是构建自动化流程的利器,适用于中大型团队的 DevOps 实践。通过配置流水线脚本与插件扩展,可以实现从代码提交到自动部署的全链路自动化。