最近使用阿里云的云效流水线进行应用自动部署,在这里做下记录。

首先进入到阿里云云效流水线页面,入下图显示。

云效 流水线 添加 docker 外部指令 云效流水线部署方式_python

 

 点击右上角的新建流水线,选择流水线模板。我的项目是java,服务器是阿里云ECS,选择完成,点击创建。

云效 流水线 添加 docker 外部指令 云效流水线部署方式_python_02

进入之后就开始选择我们要进行部署的项目了,我的项目使用阿里云的Codeup进行管理的,所以可以直接选择,也可自己添加代码的git地址。

云效 流水线 添加 docker 外部指令 云效流水线部署方式_服务器_03

 

添加完项目之后,选择打包的分支。我的为master分支进行打包。

然后就开始配置项目构建了。

云效 流水线 添加 docker 外部指令 云效流水线部署方式_java_04

 

其他配置都默认即可,打包路径可自己进行配置target/项目名,在java构建里可选择打包的jdk和maven版本。

接下来,重点来了。开始我们的自动部署配置。点击主机部署,打开配置页面。这里说一下啊,项目部署可选择自动和手动两种方式,自动就是打包完成后直接部署到服务器,而手动就需要我们自己再进行点击触发,才会进行服务的部署。推荐大家进行手动触发。

云效 流水线 添加 docker 外部指令 云效流水线部署方式_java_05

 

 

下面开始配置我们的任务名称、部署路径(服务器项目上传路径)、执行用户(服务器用户),选择制品(默认即可)。

云效 流水线 添加 docker 外部指令 云效流水线部署方式_python_06

 

 

敲黑板了哈,选择主机组,也就是我们的服务器,没有的可以点击新建进行添加。

 

云效 流水线 添加 docker 外部指令 云效流水线部署方式_服务器_07

 

这里面可选择的有阿里云ECS,自有主机,体验主机就不说了。阿里云ECS指的是你当前账号下的服务器,如果是其他账号下购买的服务器,也要选择自由主机进行添加。

我的服务器不在此账号下,所以也是选择的自有主机进行添加。

云效 流水线 添加 docker 外部指令 云效流水线部署方式_java_08

 

自有主机添加的话,需要在我们的服务器先安装agent,安装完成后,才可进行添加。

agent的安装也很简单,复制对应的命令,然后登陆我们的服务器,执行即可。需要注意的是,执行命令需要root权限,并且需要python2.7。如果服务器的python本版过高,也需要先把python版本改为2.7才可进行安装。安装完成后,就可以选择我们的主机组啦。

接下来就是我们的重中之重了,部署脚本。废话不说,直接上脚本。

云效 流水线 添加 docker 外部指令 云效流水线部署方式_java_09

 

 

小伙伴们照抄即可。最后就是部署策略了,选择每批暂停,分批数量1。我们的流水线就配置好啦。

云效现在有一点不太好的在这里提一下,在部署日志打印的时候,会先把脚本打印,然后才打印部署日志。希望早日改进吧。