Jenkins CICD 教程总结
培训目标 Training Objectives
-
掌握 Jenkins 的基础安装、配置、管理
-
学习 CI/CD 基础、Jenkins 合作 GitHub 实现进程自动化
-
了解 Jenkins Pipeline 的语法和应用
-
学习 Jenkins 多节点 (multi-node) 配置和运行
虚拟机 VM 配置 Virtual Machine Setup
-
建议使用 Google Cloud (GCP),提供 $300 免费 credit,可使用 3 个月
-
建议选择 Ubuntu 22 或 24版,配置至少 2 CPU + 8GB RAM
-
打开网络端口 22 (SSH),80 (HTTP),443 (HTTPS),8080 (Jenkins 默认端口)
-
建议使用 Docker 进行 Jenkins 快速部署
Jenkins 基础安装 Jenkins Basic Installation
-
使用 Docker 部署 Jenkins,配合 -p 给肉端口映射
-
eg:
-p 8080:8080 -p 50000:50000
-
Jenkins 目录映射:
/var/jenkins_home
-
-
使用
docker run
或 Docker Compose 运行 Jenkins -
首次启动时通过
/var/jenkins_home/secrets/initialAdminPassword
解锁 -
如果使用原生 Ubuntu 安装,需先安装 Java,然后配置 Jenkins 服务
-
将 Jenkins 用户添加到 sudo 组,方便无密码执行操作
Jenkins 和 GitHub 集成 Jenkins + GitHub Integration
-
使用 webhook 触发 Jenkins 系列进程
-
正确配置 GitHub Repo 和 Jenkins 项目 URL
-
配合 Git 接入 token 或 SSH key 进行信件合作
Jenkins Pipeline 基础 Jenkins Pipeline Basics
-
语法结构:
pipeline
->agent
/stages
/steps
-
支持 Declarative 和 Scripted 样式
-
常用 directive:
agent
,environment
,stage
,steps
,post
,triggers
-
使用
pipeline syntax
工具快速生成 pipeline 代码 -
通过 Snippet Generator 生成 checkout/git/docker 等操作
-
配合 Docker agent 为不同项目选择相应环境
示例 Sample:
pipeline { |
Multi-node 部署 Jenkins Multi-node Deployment
-
Jenkins master/slave 结构,便于处理多任务并发
-
通过 agent label 分配任务到按需节点
-
slave 可通过 SSH 或 JNLP 连接
-
选择 node 时根据工作类型和资源规划
Jenkins 安全设置和证书 Jenkins Security & Certificate Setup
-
接入 Let’s Encrypt 免费证书
-
配合 Nginx 实现 HTTPS 访问 Jenkins
-
基本流程:
-
注册域名(建议使用 GoDaddy 或 AWS Route53)
-
配置 A Record 指向 Jenkins 服务器 IP
-
配合 Certbot 自动获取证书
-
修改 Nginx 配置文件,同时展示 HTTPS 结果
-
-
Let’s Encrypt 证书有效期 90 天,可配合定时更新
Jenkins 经验分享 Real-world Experience
-
大型企业常配合 GitHub Action, GitLab CI, Jenkins 联合使用
-
根据企业经费和实际需求选择相应 CI/CD 工具
-
虚拟机配置和 SSH 管理是 DevOps 基本技能
实操 Hands-on Summary
-
实现 Docker 快速部署 Jenkins
-
建立 Jenkins Pipeline 与 GitHub 集成
-
配置 multi-node 结构实现并发
-
学习 Jenkins 证书配置,实现 HTTPS 访问
小结 Conclusion
Jenkins 是当今最流行的 CI/CD 工具之一,配合 Docker 和 Cloud 平台,能够快速搭建自动化部署系统。过程中学习了服务器部署,端口配置,线程形成,实践功能和证书配置,基本培养了 DevOps 工程师必备的能力。