本文正在参加「金石计划 . 分割6万现金大奖」

欢迎关注系列专栏:《小团队web技能建立》

《小团队web技能建立》(一)环境和东西的预备-榜首部分
《小团队web技能建立》(二)环境和东西的预备-第二部分
《小团队web技能建立》(三)环境和东西的预备-第三部分
《小团队web技能建立》(四)虚拟机的装置运用
《小团队web技能建立》(五)项目的简单布置方法
《小团队web技能建立》(六)自动化布置方法(CI/CD)(一)
《小团队web技能建立》(七)自动化布置方法(CI/CD)(二)
继续更新中…

上一篇文章咱们讨论和实验了CI/CD流程,信任各位已对它有一个大体的了解,但其装置和装备都比较繁琐,市道上有一类渠道供给傻瓜式的CI/CD服务,通过简单、人性化的操作界面,就能新建并运转起一个流水线,比方Github Action、Gitee CICD流水线、TeambitionFlow(飞流)等等,所以自动化布置你能够考虑运用这一类渠道。

运用这类渠道还有一个优点,你的构建任务所耗费的服务器资源是“白嫖”的。

渠道局限性

值得注意的是,这类渠道存在必定局限性,会优先支撑或许只支撑自家产品线上的代码源或许服务器,比方说gitee流水线的代码源只支撑gitee库,飞流只支撑绑定阿里云主机或许自有主机(teambition属于阿里旗下);而且构建环境版别可能不够全,比方飞流的Node版别现在(到交稿时刻)最高12.2。

《小团队web技术搭建》(七)自动化部署方式(CI/CD)(二)

也便是说假如你要选择这类服务,你最好在特定渠道下的代码源或服务器要选择该厂商下的CI/CD渠道,而且是否能承受构建东西/语言的版别约束(当然,版别不够用的状况,你也可选择直接在服务器构建来绕开这个局限性)。

下面咱们以Flow飞流为例(布置目标服务器需是阿里云供给),实验一下它的大体装备运转流程。

新建流水线

飞流是teambition产品生态下的其中一员,所以假如你的团队用的协作东西、git保管用的是它的产品,那用飞流是比较适宜的。

这儿咱们还是用之前写的保管在github上一个简单前端demo进行测验,它的运转结果是一个Hello world网页,当然由于网络问题(有时候会遇到),我不主张你运用github进行此次实验,你能够运用gitee里的库房进行实验。

《小团队web技术搭建》(七)自动化部署方式(CI/CD)(二)

现在咱们开端,点击飞流首页中的新建流水线

《小团队web技术搭建》(七)自动化部署方式(CI/CD)(二)

根据布置项目的类型,按实践状况选择模板(不用忧虑,选错了能够删去重来,或许新建流水线后手动调整,你乃至能够选择一个空模板),这儿咱们以布置一个Nodejs项目为例,所以选了这个模板,然后点击创立:

《小团队web技术搭建》(七)自动化部署方式(CI/CD)(二)

装备流水线

绑定代码源

填写一个你流水线名称(一般是填写项目名称),然后绑定一个代码源,这儿咱们绑定刚才说的前端demo库房,首次绑定库房你能够需要账号授权(如github账号授权):

《小团队web技术搭建》(七)自动化部署方式(CI/CD)(二)

测验流程

这儿装备你的测验流程,假如没有的话,你乃至能够把整个测验流程删掉,但是不主张去掉单元测验、代码风格等校验。

《小团队web技术搭建》(七)自动化部署方式(CI/CD)(二)

构建

然后来到构建这一栏,点击Node.js构建,咱们按此项目的实践构建状况,装备构建脚本:

《小团队web技术搭建》(七)自动化部署方式(CI/CD)(二)
咱们来解说下这段脚本:

# 进入要布置的项目目录,由于此库房咱们要布置的项目在`demo/cicd-demo`
cd demo/cicd-demo
# 装置Node.js依赖 当然这个demo不需要任何依赖,所以你能够省掉
# npm install
# 构建
npm run build

在打包途径这儿,按照本项目的状况填写:

./demo/cicd-demo/dist

《小团队web技术搭建》(七)自动化部署方式(CI/CD)(二)

布置

来到布置一栏,咱们需要把飞流的构建产物放到咱们的布置服务器,也便是真实运转这个项目的服务器。

假如你在主机组还没有服务器,你能够新建绑定一个,条件是它要是一个阿里云服务器或自有服务器:

《小团队web技术搭建》(七)自动化部署方式(CI/CD)(二)

绑定一个阿里云服务器,按进行授权:

《小团队web技术搭建》(七)自动化部署方式(CI/CD)(二)
这儿必须要勾选阿里云颁发的唯一用户标志符,不然授权无效:
《小团队web技术搭建》(七)自动化部署方式(CI/CD)(二)

《小团队web技术搭建》(七)自动化部署方式(CI/CD)(二)

在阿里云控制台的服务器信息承认主机地区,名称等:

《小团队web技术搭建》(七)自动化部署方式(CI/CD)(二)

承认授权完结后回到刚才绑定主机的地方,按地区筛选出主机,然后绑定:

《小团队web技术搭建》(七)自动化部署方式(CI/CD)(二)

《小团队web技术搭建》(七)自动化部署方式(CI/CD)(二)

装备布置脚本,在上一篇文章咱们已经为这个项目装备了nginx,而且解析到/www/projects/demo/demo2目录,所以这儿的下载途径咱们填写/www/projects/demo/demo2/package.tgz,也便是打包到服务器的构建物目录和包名:

《小团队web技术搭建》(七)自动化部署方式(CI/CD)(二)
构建脚本便是做了该文件解压到布置目录:

tar zxvf /www/projects/demo/demo2/package.tgz -C /www/projects/demo/demo2/

运转流水线

点击保存并运转,或许保存后退出流水线再运转,等待运转成功。

《小团队web技术搭建》(七)自动化部署方式(CI/CD)(二)

《小团队web技术搭建》(七)自动化部署方式(CI/CD)(二)

在这进程中假如报错了,你能够检查日志再次编辑流水线进行调整,或许你想了解它的工作进程也能够点击日志检查:

《小团队web技术搭建》(七)自动化部署方式(CI/CD)(二)

运转成功后,咱们到服务器检查文件已经上传并解压完毕:

《小团队web技术搭建》(七)自动化部署方式(CI/CD)(二)

接下来咱们检查布置地址http://47.96.177.197:8990/:

《小团队web技术搭建》(七)自动化部署方式(CI/CD)(二)

布置已完结,下次有代码更新时点击下运转项目对应的流水线即可,你能够按提示装备代码提交触发流水线,这种一般在测验环境能够用,出产环境慎用。

感谢阅读!欢迎关注系列专栏:《小团队web技能建立》