经过两天的折腾,迁移成功。以杭州地区为例,香港地区不支持,浪费了我一天的时间。
前提:
需要有一个mongo服务器,必须设置密码,然后开放所有IP登录。
也可以直接使用阿里的,只要不介意价格。
步骤:
- 离线下载yapi,并install
- 修改配置文件,给mongo设置密码
- 修改yapi源码:修改日志文件地址,否则会启动失败,因为函数计算文件不能修改。
离线yapi
安装
mkdir yapi
cd yapi
git clone https://github.com/YMFE/yapi.git vendors
cp vendors/config_example.json ./config.json
cd vendors
npm install --production
初始化数据库
本地配置好mongo数据库,为了安全,可以使用vpc网络,我是个人用户,所以给mongo加密就够了。
cd ./yapi/vendors
npm run install-server
本地测试
node vendors/server/app.js
没有问题后,开始配置函数计算相关的东西。
迁移函数计算
修改日志目录
添加bootstrap启动脚本
bootstrap
#!/bin/bash
node vendors/server/app.js
注意必须是unix格式,可以使用 dos2unix bootstrap 转换,否则会报错。
template.yml
ROSTemplateFormatVersion: '2015-09-01'
Transform: 'Aliyun::Serverless-2018-04-03'
Resources:
node:
Type: 'Aliyun::Serverless::Service'
Properties:
Description: This is FC service
NasConfig: Auto
my-api:
Type: 'Aliyun::Serverless::Function'
Properties:
Handler: index.handler
Runtime: custom
CodeUri: ./
MemorySize: 512
Timeout: 120
Events:
httpTrigger:
Type: HTTP
Properties:
AuthType: ANONYMOUS
Methods:
- GET
- POST
- PUT
发布
fun deploy
自定义域名
1、添加域名解析,指向自己的函数计算地址
2、在函数计算web页,添加自定义域名
然后就可以啦,展示下: