CI/CD 制作流程
关于 CI/CD 流程工具,日常主要使用 Jenkins、Ansible、Kubernetes,Gitlab,Maven,Docker 等,总结一下我的使用情况。
工具情况
在同一台 Linux 服务器上,安装 Jenkins,Ansible,Docker,Maven,Kubectl。
准备工作
Jenkins 安装插件,包括:git,maven,dingding,qy-weixin 等。
kubectl 配置已有 Kubernetes 集群认证。
在服务器上 docker login 镜像仓库。
创建好钉钉机器人或者企业微信机器人。
操作流程
Jenkins 新建 Job 任务。
配置 git 仓库地址,配置 git 鉴权信息。
创建 maven 执行步骤,pom.xml 文件,maven 命令使用 clean install。
在 Jenkins 的 shell 框中写命令。
4.1 借助 shell 命令,把程序包放到对应文件夹中。
4.2 配置文件包括:应用配置文件,Dockerfile,Kubernetes yml 等文件。这些配置文件中的变量做成 ansible 可识别的变量形式,做为配置文件模板,借助 ansible-playbook 命令,把这些模板配置文件,替换为具体的配置文件内容,放到应用对应文件夹路径中。
4.3 执行 docker build,创建本地容器镜像。
4.4 执行 docker pull,把镜像推送到 Kubernetes 镜像库中。
4.5 执行 kubectl apply -f xxx.yml,执行应用的 Kubernetes 集群部署。
配置钉钉通知或者企业微信通知,提醒 Jenkins Job 执行结果。
备注说明
写的比较粗,各个环节的具体做法和结合实际情况自行编写。
Jenkins,Ansible,Kubernetes 使用的还比较浅,以够用为原则。
版权声明: 本文为 InfoQ 作者【wong】的原创文章。
原文链接:【http://xie.infoq.cn/article/726d099fbd153a8e0af3566ee】。
本文遵守【CC-BY 4.0】协议,转载请保留原文出处及本版权声明。
评论