• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

koa-alibaba-component: 阿里云 Koa 组件

原作者: [db:作者] 来自: 网络 收藏 邀请

开源软件名称:

koa-alibaba-component

开源软件地址:

https://gitee.com/serverless-devs-awesome/koa-alibaba

开源软件介绍:

阿里云 Koa 项目部署文档

前言

通过本组件,您可以简单快速的将Koa项目部署到线上。

使用

最简使用方法

模版拉取:

s init koa -p alibaba

其中Yaml的默认配置为:

KoaComponent:  Component: koa  Provider: alibaba  Extends:    deploy:      - Hook: npm install --production        Path: ./src        Pre: true  Properties:    Region: 'cn-hangzhou'    CodeUri: './src'    App: app.js

系统默认bootstrap内容:

#!/usr/bin/env bashexport DEFAULTAPP=app.jsnode $DEFAULTAPP`

完整Yaml示例

KoaComponent:  Component: koa  Provider: alibaba  Extends:  deploy:    - Hook: npm install --production      Path: ./src      Pre: true  Properties:    Region: 'cn-hangzhou'    #      CodeUri: 本地路径    #      CodeUri:    #        Src: 本地路径    #        Exclude:    #          - path    #        Include:    #          - path    #      CodeUri:    #        Bucket: function code包的bucket name    #        Object: code zip包的object name    App: app.js    CodeUri:      Bucket: function code包的bucket name      Src: 本地路径      Exclude:        - path      Include:        - path    Environment:      - Key: Environmentkey        Value: EnvironmentValue    Log:      LogStore: loghub中的logstore名称      Project: loghub中的project名称    Detail:      Service:        Name: 服务名        Description: 服务描述        InternetAccess: 访问公网        Role: 授予函数计算所需权限的RAM role        Vpc:          SecurityGroupId: 安全组          VSwitchIds:            - 一个或多个VSwitch ID          VpcId: VPC ID        Nas:          Use--package-type pip oss2 pymysqlrId: userID          GroupId: groupID          MountPoints:            - ServerAddr: adasdasdas              MountDir: ./ssssss        Tags:          - Key: 标签名            Value: 标签值          - Key: 标签名            Value: 标签值      Function: 函数名        Name: 函数名        Description: 函数描述        MemorySize: function的内存规格        Timeout: function运行的超时时间        Triggers:          - Name: TriggerNameHttp            Parameters:              AuthType: ANONYMOUS              InvocationRole: 使用一个 RAM 角色的 ARN 为函数指定执行角色              Methods:                - GET                - POST                - PUT              Domains:                - Domain: AUTO/或者您的网址                  Protocol:                    - HTTP                    - HTTPS                  CertConfig:                    CertName: 'CertName'                    PrivateKey: './certificates/privateKey.pem'                    Certificate: './certificates/certificate.pem'                  Routes:                    - Path: '/a'                      Qualifier: Prod # 版本(可选)                    - Path: '/a'                      Qualifier: Prod # 版本(可选)       Bootstrap:          App: app.js          Start: node run app.js          Path: ./src/bootstrap

详细使用方法

参数名必填类型参数描述
RegiontrueEnum地域
LogfalseString/Structlog配置,function产生的log会写入这里配置的logstore
CodeUrifalse(默认为./)String/Struct代码位置
AppfalseString应用
EnvironmentfalseStruct环境变量
DomainsfalseStruct/List自定义域名配置
DetailfalseStruct详细配置

Region

参数取值:cn-beijing, cn-hangzhou, cn-shanghai, cn-qingdao, cn-zhangjiakou, cn-huhehaote, cn-shenzhen, cn-chengdu, cn-hongkong, ap-southeast-1, ap-southeast-2, ap-southeast-3, ap-southeast-5, ap-northeast-1, eu-central-1, eu-west-1, us-west-1, us-east-1, ap-south-1

Log

如果是String类型,可以直接写Auto,如果是Struct类型:

参数名必填类型参数描述
LogStorefalseStringloghub中的logstore名称
ProjectfalseStringloghub中的project名称

CodeUri

  • 直接填写路径

  • 参数名必填类型参数描述
    BucketfalseStringfunction code包的bucket name
    ObjectfalseStringcode zip包的object name
    ExcludefalseList除去路径
    IncludefalseList包括路径
  • 参数名必填类型参数描述
    BucketfalseStringfunction code包的bucket name
    SrcfalseString本地路径
    ExcludefalseList除去路径
    IncludefalseList包括路径

Domains

  • 参数名必填类型参数描述
    DomainfalseString域名
  • 参数名必填类型参数描述
    DomainfalseString域名
    ProtocolfalseList(HTTP,HTTPS)协议
    CertConfigfalseStruct域名证书
    RoutesfalseStruct路径配置
CertConfig
参数名必填类型参数描述
CertNamefalseString名称
PrivateKeyfalseString表示私钥
CertificatefalseString表示证书
Routes
参数名必填类型参数描述
PathfalseString路径
QualifierfalseStringservice 版本

Detail

参数名必填类型参数描述
ServicefalseStruct服务
FunctionfalseStruct函数
BootstrapfalseStruct启动配置
Service
参数名必填类型参数描述
NamefalseStringservice名称
DescriptionfalseStringservice的简短描述
InternetAccessfalseBoolean设为true让function可以访问公网
RolefalseString授予函数计算所需权限的RAM role, 使用场景包含 1. 把 function产生的 log 发送到用户的 logstore 中 2. 为function 在执行中访问其它云资源生成 token
VpcfalseStructvpc配置, 配置后function可以访问指定VPC
NasfalseStructNAS配置, 配置后function可以访问指定NAS
TagfalseList标签
Vpc

如果是String类型,可以直接写Auto,如果是Struct类型:

参数名必填类型参数描述
SecurityGroupIdfalseString安全组ID
VSwitchIdsfalseString一个或多个VSwitch ID
VpcIdfalseStringVPC ID
Nas

如果是String类型,可以直接写Auto,如果是Struct类型:

| 参数名 |  必填|  类型|  参数描述 | | --- |  --- |  --- |  --- | | Type | true | String | 只可填写Auto || FcDir | false | String | 函数计算目录 || LocalDir | false | List<String>/String  | 本地目录 |
| 参数名 |  必填|  类型|  参数描述 | | --- |  --- |  --- |  --- | | UserId | false | String | userID || GroupId | false | String | groupID || MountPoints | false | <Struct>List | 挂载点 |

其中MountPoints为:

| 参数名 |  必填|  类型|  参数描述 | | --- |  --- |  --- |  --- | | Alias | false | String |  针对组件生效的别名(和线上资源无关) || NasAddr | false | String |  NAS 服务器地址 || NasDir | false | String | NAS目录 || FcDir | false | String | 函数计算目录 || LocalDir | false | String | 本地目录 |
Tag
参数名必填类型参数描述
KeyfalseString标签名
ValuefalseString标签值
Function
参数名必填类型参数描述
NamefalseStringfunction名称
DescriptionfalseStringfunction的简短描述
MemorySizefalseStringfunction的内存规格
TimeoutfalseStringfunction运行的超时时间
TriggersfalseList触发器
Triggers
参数名必填类型参数描述
NametrueString触发器名称
ParameterstrueStruct参数内容

其中Parameters为:

参数名必填类型参数描述
AuthTypetrueList鉴权类型,可选值:ANONYMOUS、FUNCTION
MethodstrueListHTTP 触发器支持的访问方法
DomainsfalseString参数内容
EnablefalseString表示是否启用该触发器。
InvocationRolefalseString使用一个 RAM 角色的 ARN 为函数指定执行角色,事件源会使用该角色触发函数执行,请确保该角色有调用函数的权限
QualifierfalseStringservice 版本

AuthType枚举:ANONYMOUSFUNCTION

Methods枚举:GETPOSTPUTDELETEHEAD

Domains类型为:

  • 参数名必填类型参数描述
    DomainfalseString域名
  • 参数名必填类型参数描述
    DomainfalseString域名
    ProtocolfalseList(HTTP,HTTPS)协议
    CertConfigfalseStruct域名证书
    RoutesfalseStruct路径配置
Bootstrap
参数名必填类型参数描述
AppfalseString应用
StartfalseString启动指令
PathfalseStringBootstrap路径

鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap