发布使用Jenkins进行持续构建与发布

pull/26/head
Jimmy Song 2017-06-27 20:36:25 +08:00
parent 09de7f84a8
commit 56e9707a21
3 changed files with 21 additions and 0 deletions

View File

@ -46,6 +46,7 @@
- [4.3.2 应用日志收集](practice/app-log-collection.md)
- [4.3.3 配置最佳实践](practice/configuration-best-practice.md)
- [4.3.4 监控](practice/monitor.md)
- [4.3.5 使用Jenkins进行持续构建与发布](practice/jenkins-ci-cd.md)
- [4.4 存储管理](practice/storage.md)
- [4.4.1GlusterFS](practice/glusterfs.md)
- [4.4.1.1 使用glusterfs做持久化存储](practice/using-glusterfs-for-persistent-storage.md)

Binary file not shown.

After

Width:  |  Height:  |  Size: 477 KiB

View File

@ -0,0 +1,20 @@
# 使用Jenkins进行持续集成与发布
我们基于Jenkins的CI/CD流程如下所示。
![基于Jenkins的持续集成与发布](../images/kubernetes-jenkins-ci-cd.png)
## 流程说明
应用构建和发布流程说明。
1. 用户向Gitlab提交代码代码中必须包含`Dockerfile`
2. 将代码提交到远程仓库
3. 用户在发布应用时需要填写git仓库地址和分支、服务类型、服务名称、资源数量、实例个数确定后触发Jenkins自动构建
4. Jenkins的CI流水线自动编译代码并打包成docker镜像推送到Harbor镜像仓库
5. Jenkins的CI流水线中包括了自定义脚本根据我们已准备好的kubernetes的YAML模板将其中的变量替换成用户输入的选项
6. 生成应用的kubernetes YAML配置文件
7. 更新Ingress的配置根据新部署的应用的名称在ingress的配置文件中增加一条路由信息
8. 更新PowerDNS向其中插入一条DNS记录IP地址是边缘节点的IP地址。关于边缘节点请查看[边缘节点配置](edge-node-configuration.md)
9. Jenkins调用kubernetes的API部署应用