【.NET】实现CI/CD(二)运行镜像,自动化部署

748a24e8ce1fb3d8c509a4b62826f179.png

(一重山,两重山。)

书接上文,在上回中我们说到了《【Azure + Core】实现CI/CD(一)构建镜像并推送仓库

今天我们继续往下说,说下CD(持续部署)的流程,也是很简单。这里先贴下上篇文章末尾留的小问题,在CD的时候遇到了个错误,打开日志是这样的,大家可以先看看,后续会解答:

72e252a1e42fbbb8621971de1ee4c0bf.png

1$ 添加Release管道

和CI类似,还是在Pipelines(管道)的Release(发布)中,新建一个Pipeline:

c52591f55ee0452106d3cabcbbbaa410.png

选择一个空模板:

bc4fa39d210502c245ae6aa9336e280c.png

将鼠标放到Artifacts(制品)模块上,点击添加一个Artifact,此时右侧唤起编辑窗口,

选择build,然后选择构建的管道源

3c94d87aaf08ae65448d5f4ca4e8a81a.png

9cfd0ec92d726fdef4f4cd853a9b8449.png

然后可以开启自动构建,只要提交代码的时候,便会触发CI的Build操作,接着便立即触发CD的Release操作,整个流程一气呵成

32e024df9dfc3fa1298ba5661990e5c5.png

配置好了Artifact,你可以称它为制品,然后就可以配置task任务了。

2$ 配置Agent代理

将鼠标放到右侧的Stage 1选项上,可以看到有三块功能选择,分别是:

①、重命名Stage(阶段);

②、添加一个新的Stage;

③、编辑task(任务);

274308a6dc2cd8370ffd45cae504031e.png

点击任务链接,配置Agent Job(代理工作),这里有两点需要注意:

1、代理池,说白了就是部署的地方,目前可以默认即可,以后需要用自己的服务器;

2、agent specification(代理规格),就是服务器规格配置;

5475fc28bbad2a9ca71672948a183416.png

请注意!这里默认的是vs2019规格,是windows环境的,如果不改的话,就会出现文章开头的错误,Docker不能运行的平台问题。所以直接选Linux即可

3$ 配置Task任务

点击上边的加号,筛选docker的task模板

765a3897ffdff1ceb5bd7147ea099b99.png

在新唤起的编辑页,编辑命令即可,Docker有三个类型,对应不同的命令类型,

我们第一步需要先删除旧的容器,所以直接用run命令即可,所以Task的版本用0.*:

5fbea3f520e80fb4fdaaf25bc65265f0.png

还是和上篇一样,需要选择容器Registry地址,然后就是配置一个action(行为),增加一个删除镜像的命令

rm -f xxxx

4$ 配置其他的Stage阶段

仿造上边第一步删除旧容器的阶段步骤,再建一个运行容器的Stage,整体流程一致,不再细说,配置图如下:

c6f6715b3cf16db03282c98975c616f1.png

用的是Task版本为1.*的Docker容器配置,使用自定义的DockerRegistry,配置镜像名,支持自定义,比如我加了前缀,也可以指定端口。

点击Save(保存),一套简单的持续集成管道就建好了

02aa96d4f23ddd557c2c5b7e4f6e3988.png

手动触发,create release,就可以看到详细的过程:

6d84b5992f2f66b074d246588f75102d.png

等一段时间后,就可以看到效果了,但是这样是不行的,因为我们还没有自己的IP。

5$ 其他问题

一、如何预览效果

上边我们说到了一个地方,就是代理池(Agent Pool),这个东西就是配置我们的服务器地址的,也就是宿主机,配置好以后就可以看效果了。

当然,也可以直接对接k8s,效果也是一样的,等我后续的文章吧。

二、如何自定义Docker Registry

目前这两篇文章可以看出来,用的是DockerHub作为服务仓库地址,如何使用自己的私库或者Azure上的呢,也是等我后续的文章吧。

下次再见咯。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值