码云流水线
❝上篇文章已经把准备工作完成了,这一次可以直接配置,本篇就讲述如何配置
❞
案例说明
本次的演示依旧是Jenkins部署的那套程序
这里Node程序不需要打包成静态资源,直接上传部署即可,话多不多进入正题!
开通流水线
进入代码仓库选择流水线
第一次需要开通,开通步骤就不显示了,比较简单点点点即可
点击新增流水线可配置具体信息
流水线示意图
配置流水线
基本信息
流水线示意图
注意:不要直接点保存,等配置完成一起点击,我这里选得是图形化配置
触发事件
示意图
我这里选择的是push监听、分支匹配、手动触发
当然你也可以配固定分支,自动触发,这里不过多讲解。
任务编排
这里我只需两步即可,第一步上传,第二步部署
示意图
Nodejs构建
我们选择左边按钮的时候,若未进行选择类型,右边会出现以下示意图(演示所以创建了并行任务,具体看需要)
有很多编译格式,比如:镜像编译、Nodejs编译、GCC编译,各语言都有,这里我选择Nodejs编译,主要是再上传前需要打包压缩包。
构建示意图
这里注意Node版本号(如果要介入Node打包,比如打包前端静态资源)
我这里不用关心,我使用的是tar打包压缩包
还要注意打包目录,就是构建完成放哪里,我这里选择同一级
tar -zcvf dist.tar.gz ./bin ./config ./db ./ public ./routes ./service ./views app.js Dockerfile package.json
示意图
示意图
通知我选择的是飞书,上一篇配置后这里可选择,并且勾选了任务成功和失败都会通知
示意图
主机部署
这一步依旧是要选择类型,这里选择部署下面的主机部署
示意图
服务器机组就是上一篇配置的
文件来源选择上游构建
部署的名称就是上一步要上传的包名
下载路径是服务器上的位置
示意图
然后是脚本,这里大致说明一下
在上传文件的下一级创建一个dist目录
进入dist目录,删除里面所有的内容
解压上一级的包到当前目录
删除上一级的压缩包
终止并删除运行容器
删除之前的镜像
打包新的镜像
运行新的容器
mkdir -p /opt/mayun/dist
cd /opt/mayun/dist
# 删除当前所有的命令
rm -rf *
#解压
tar zxvf ../dist.tar.gz
# 删除压缩包
rm ../dist.tar.gz
echo "------------- 终止 other-source-api-test 容器 开始 --------------"
docker stop other-source-api-test
echo "------------- 终止 other-source-api-test 容器 结束 --------------"
echo "------------- 删除 other-source-api-test 容器 开始 --------------"
docker rm other-source-api-test
echo "------------- 删除 other-source-api-test 容器 结束 --------------"
echo "------------- 删除other-source-api-test镜像开始 --------------"
docker rmi other-source-api-test
echo "------------- 删除other-source-api-test镜像结束 --------------"
echo "------------- 制作other-source-api-test镜像开始 --------------"
docker build -t other-source-api-test .
echo "------------- 制作other-source-api-test镜像结束 --------------"
echo "运行镜像"
docker run -d -p 8081:8080 --restart=always -v /usr/lib/jvm:/usr/lib/jvm -v /usr/share/javazi-1.8:/usr/share/javazi-1.8 --name other-source-api-test other-source-api-test
通知跟上一步一样配置
日志
Nodejs构建
示例
主机部署
示例
飞书机器人通知
示例
觉得有用就点个关注吧,后面会更新更多!
关注公众号了解更多