部署到阿里云
前期准备
需要开通的产品
- 函数计算FC:整个系统的计算能力运行在FC上
- 日志服务SLS:分布式日志存储服务,用于定位和发现问题
- 对象存储OSS:用于存储输出日志信息
- 表格存储Tablestore: 应用和任务的元数据信息存储
推荐您拥有以下的产品权限 / 策略:
服务/业务 | 权限/策略 |
---|---|
函数计算FC | AliyunFCFullAccess |
日志服务SLS | AliyunLogFullAccess |
对象存储OSS | AliyunOTSFullAccess |
表格存储Tablestore | AliyunOSSFullAccess |
安装Serverless Devs:
npm install @serverless-devs/s -g --registry=https://registry.npmmirror.com
s config add
部署
初始化项目
- 使用
s init
进行初始化
s init serverless-cd -d serverless-cd
填写初始化信息
如果没有特殊的需求或者是第一次使用Serverless-cd,推荐使用默认值。
- 选择对应的地域信息
创建应用所在的地区
? 地域
us-west-1
cn-beijing
cn-hangzhou
❯ cn-hongkong
cn-shenzhen
cn-qingdao
cn-zhangjiakou
- 选择OSS bucket
默认值 auto
会生成对应的OSS bucket, 格式为 ${uid}-${region}-serverless-cd
。
用于存放执行日志,填写auto默认会生成OSS bukect
? 对象存储 bukect 名称 auto
- 选择函数的服务名:
应用所属的函数计算服务, 只能包含字母、数字、下划线和中划线。不能以数字、中划线开头。长度在 1-128 之间
? 服务名 serverless-cd
- 选择serverless数据库实例名:
用于存储持久化数据,请前往https://otsnext.console.aliyun.com 创建实例
? Tablestore 实例名称 (serverless-cd)
- 填写表结构的前缀:
相关表的前缀,必须以字母或下划线(_)开头
? 表名称前缀 cd
- 自定义域名:
填写auto 系统会生成一个测试域名
? 自定义域名 auto
- 默认的配置文件名称:
serverless-pipeline.yaml
是serverless-cd默认的规范,只有存在此文件才会被系统识别。
serverless-pipline 默认的配置文件
? 配置文件 serverless-pipeline.yaml
执行部署
到对应的文件夹,执行 s deploy
进行部署
部署完成后会生成一个对应的测试域名,格式为auto.serverless-cd.${uid}.{region}.fc.devsapp.net
快速体验
访问控制台:
auto.serverless-cd.${uid}.{region}.fc.devsapp.net
创建应用:
- 添加授权
- 获取Token
在对应GitHub setting页面,添加个人Token,并填入
- 导入应用:
- 选择nodejs模版应用: https://github.com/serverless-cd-demo/nodejs-ci,并fork到当前账号
- 创建应用
- 查看应用详情
可以看到刚创建的应用已经触发部署
并且可以看到详细的部署日志信息
webhook触发部署
修改代码并且提交,查看自动化执行部署构建流程