1.9.7 • Published 3 months ago

@cloudbase/cloudbaserc-json-schema v1.9.7

Weekly downloads
162
License
Apache-2.0
Repository
github
Last release
3 months ago

npm.io

npm.io

npm.io

npm.io

npm.io

Table of Contents

快速开始

  1. 安装 CLI
npm install -g @cloudbase/cli@latest
  1. 初始化一个应用
cloudbase init
  1. 部署应用
cloudbase framework:deploy

一键部署一个 Vue CLI 创建的 项目

npm.io

项目示例

名称应用示例介绍基于模板创建项目
Vue 应用Vue + 云函数 + 静态网站部署cloudbase init --template vue
React 应用React + 云函数 + 静态网站部署cloudbase init --template react-starter
React 全栈应用React + 云函数 + 静态网站部署+ 云数据库cloudbase init --template react-demo
Nuxt SPA 应用Nuxt SPA + 云函数 + 静态网站部署cloudbase init --template nuxt-spa
Nuxt SSR 应用Nuxt SSR + 服务端部署 + 静态网站部署cloudbase init --template nuxt-ssr
Koa 应用Koa + 服务端部署cloudbase init --template koa-starter
Express 应用Express + 服务端部署cloudbase init --template express-starter
Nest 应用Nest + 服务端部署cloudbase init --template nest-starter
Egg 应用Egg + 服务端部署cloudbase init --template egg-starter
Node.js 云函数示例Node.js 云函数cloudbase init --template node-starter
PHP 云函数示例PHP 云函数cloudbase init --template php-starter
Java 云函数示例Java 云函数cloudbase init --template java-starter
VuePresss 网站应用VuePresss + 静态网站部署cloudbase init --template vuepress
Node.js 云应用Node.js + Serverless 云应用部署cloudbase init --template node
Aqueduct (Dart Server) 云应用Aqueduct (Dart Server) + Serverless 云应用部署cloudbase init --template dart
Omi 应用Omi + 云函数 + 静态网站部署cloudbase init --template omi-starter
uni-app 应用uni-app + 云函数 + 静态网站部署cloudbase init --template uni-app-starter
taro 应用taro + 云函数 + 静态网站部署cloudbase init --template taro-starter
Deno 云应用Deno + Serverless 云应用部署cloudbase init --template deno
Next SSR 应用Next SSR + 服务端部署 + 静态网站部署cloudbase init --template next-ssr

模板

云开发 CloudBase Framework 支持模板工程,提供了多种语言和框架的模板项目,只需要一个命令就可以创建一个开箱即用的工程,并且集成了开发、构建、部署的工作流。

模板可以自由定制,你可以根据自己的需要创建任何语言、框架的模板工程,并通过模板工程一键生成你的初始工程,原有的工程可以很容易改造成 cloudbase 的模板项目,只需要创建一个 cloudbaserc.json,填写必要的配置即可。

更多模板相关介绍,可以点击前往

插件

云开发 CloudBase Framework 支持插件机制,提供了多种应用框架和云资源的插件,只需要很少的配置甚至 0 配置就可以现有应用和云开发 CloudBase Framework 框架进行集成。

插件可以处理应用中的一些独立单元的构建、部署、开发、调试等流程。例如 website 插件可以处理静态网站等单元,node 插件可以处理 koa 、express 等 node 应用。插件可以组合使用。

插件的配置写在 cloudbaserc 文件中,目前仅支持 JSON 文件,后续会支持 YAML。

插件的配置可以手动填写,也可以自动生成,目前针对前端框架支持自动识别填写插件。

自动检测生成插件配置流程

  • cloudbase init --without-template 生成项目配置·

  • cloudbase framework:deploy 进行自动检测生成插件配置文件并部署

目前支持的插件列表

插件最新版本插件介绍
@cloudbase/framework-plugin-websiteNpm version一键部署网站应用
@cloudbase/framework-plugin-nodeNpm version一键部署 Node 应用(支持底层部署为函数或者 Serverless 云应用)
@cloudbase/framework-plugin-nuxtNpm version一键部署 Nuxt SSR 应用
@cloudbase/framework-plugin-functionNpm version一键部署函数资源
@cloudbase/framework-plugin-containerNpm version一键部署云应用容器服务
@cloudbase/framework-plugin-dartNpm version一键部署 Dart 云应用
@cloudbase/framework-plugin-databaseNpm version一键声明式部署云开发 NoSQL 云数据库
@cloudbase/framework-plugin-denoNpm version一键部署 Deno 应用
@cloudbase/framework-plugin-nextNpm version一键部署 Next SSR 应用

配置示例

例如一个 Vue 的全栈项目,包含网站前端和云函数

可以在在项目下手动创建一个 cloudbaserc.json,填写如下配置文件,调用 cloudbase framework:deploy 进行部署

或者直接运行

  • cloudbase init --without-template

  • cloudbase framework:deploy 进行自动检测并部署

{
  "envId": "{{envId}}",
  "framework": {
    "plugins": {
      "client": {
        "use": "@cloudbase/framework-plugin-website",
        "inputs": {
          "buildCommand": "npm run build",
          "outputPath": "dist"
        }
      },
      "server": {
        "use": "@cloudbase/framework-plugin-function",
        "inputs": {
          "functionRootPath": "cloudfunctions",
          "functions": [
            {
              "name": "helloworld",
              "config": {
                "timeout": 5,
                "envVariables": {},
                "runtime": "Nodejs10.15",
                "memorySize": 128
              }
            }
          ]
        }
      }
    }
  }
}

更多配置详细参数说明,可以查看配置说明文档,点击前往

整体架构

云开发 CloudBase Framework 基于云开发底层资源和云开发资源编排管理,整体包含 CLI 工具层、应用框架层和 CI/CD 层。

  • CLI 层针对主流应用框架进行了适配,可以一键无缝集成,并提供开发、一键部署等功能
  • 应用框架层提供了针对不同语言和框架的 SDK 和组件,同时对底层云资源进行抽象
  • CI/CD 层可以实现云端部署、代码平台集成、灰度发布和升级回滚等功能

npm.io

Roadmap

npm.io

🚀 表示已经实现的功能

里程碑状态
框架核心功能支持插件机制,适配 Cloudbase CLI🚀
开发 Website plugin 支持部署前端静态项目🚀
自动检测前端框架 (Vue/React 等主流框架) 使用 Website plugin🚀
开发 Nuxt plugin 支持 Nuxt SSR 项目🚀
开发 Function plugin 支持自动部署函数🚀
开发 Node Api Plugin 支持一键部署 Node 应用🚀
插件支持编译成 SAM 描述🚀
自动检测 Express/ Koa 等主流 Node 框架使用 Node Api Plugin
云开发全栈框架支持
Node Api Plugin 支持建模和代码生成
结合 Github Action、Coding 等平台的 CI/CD 功能
支持后端部分容器化构建,提供服务函数化构建的另一个选项🚀
开发 SAM Plugin 支持 SAM 扩展插件,框架可引入第三方 SAM 扩展(如 CMS)
开发 Flutter Plugin 支持 Flutter 的 Dart 后端一键部署🚀

贡献指南

欢迎大家参与到 CloudBase Framework 的开发工作,贡献一份力量

开发贡献方式请参考 开发贡献指南 文档

Changelog

CloudBase Framework 的版本变更日志请参阅 changelog 文件

License

开源协议文档请参阅 Apache License 2.0

在线交流群

Contributors ✨

Thanks goes to these wonderful people (emoji key):

All Contributors

This project follows the all-contributors specification. Contributions of any kind welcome!

1.9.7

3 months ago

1.9.6-beta.0

2 years ago

1.9.6

2 years ago

1.9.5

2 years ago

1.9.4

2 years ago

1.8.17-beta.1

2 years ago

1.9.0

2 years ago

1.8.18-beta.1

2 years ago

1.8.17

2 years ago

1.8.16

3 years ago

1.8.15

3 years ago

1.8.14

3 years ago

1.8.11

3 years ago

1.8.13

3 years ago

1.8.3

3 years ago

1.8.2

3 years ago

1.8.1

3 years ago

1.8.0

3 years ago

1.7.4

3 years ago

1.7.3

3 years ago

1.7.1

3 years ago

1.6.19

3 years ago

1.7.0

3 years ago

1.6.18

3 years ago

1.6.16

3 years ago

1.6.15

3 years ago

1.6.14

3 years ago

1.6.13

3 years ago

1.6.12

3 years ago

1.6.11

3 years ago

1.6.9

3 years ago

1.6.3

3 years ago

1.6.5

3 years ago

1.6.1

3 years ago

1.6.0

3 years ago

1.6.0-alpha.0

3 years ago

1.5.9

3 years ago

1.5.8

3 years ago

1.5.7

3 years ago

1.5.6

3 years ago

1.5.4

3 years ago

1.5.3

3 years ago

1.5.2

3 years ago

1.5.1

3 years ago

1.4.11-beta.34

3 years ago

1.4.11-beta.37

3 years ago

1.4.11-beta.31

3 years ago

1.5.0

3 years ago

1.4.11

3 years ago

1.4.11-beta.24

3 years ago

1.4.10

3 years ago

1.4.8

3 years ago

1.4.7

3 years ago

1.4.6

3 years ago

1.4.5

3 years ago

1.4.4

3 years ago

1.4.3

3 years ago

1.4.1

3 years ago

1.4.0

3 years ago

1.3.2-beta.88

3 years ago

1.3.2-beta.81

3 years ago

1.3.10

3 years ago

1.3.2-beta.77

3 years ago

1.3.2-beta.69

3 years ago

1.3.2-beta.73

3 years ago

1.3.2-beta.71

3 years ago

1.3.2-beta.60

3 years ago

1.3.2-beta.57

3 years ago

1.3.2-beta.56

3 years ago

1.3.2-beta.55

3 years ago

1.3.2-beta.48

3 years ago

1.3.9

3 years ago

1.3.2-beta.40

3 years ago

1.3.8

3 years ago

1.3.7

3 years ago

1.3.6

3 years ago

1.3.2-beta.39

3 years ago

1.3.2-beta.38

3 years ago

1.3.2-beta.37

3 years ago

1.3.2-beta.35

3 years ago

1.3.2-beta.34

3 years ago

1.3.2-beta.31

3 years ago

1.3.2-beta.29

3 years ago

1.3.2-beta.23

3 years ago

1.3.2-beta.18

3 years ago

1.3.2-beta.17

3 years ago

1.3.6-beta.8

4 years ago

1.3.2-beta.14

4 years ago

1.3.5

4 years ago

1.3.1

4 years ago

1.3.1-beta.17

4 years ago

1.3.1-beta.14

4 years ago

1.3.1-beta.15

4 years ago

1.3.1-beta.13

4 years ago

1.3.1-alpha.0

4 years ago

1.3.0-alpha.0

4 years ago

1.2.10

4 years ago

1.2.9-alpha.0

4 years ago

1.2.8-alpha.0

4 years ago

1.2.7-alpha.0

4 years ago

1.2.6-alpha.0

4 years ago

1.2.5-alpha.0

4 years ago

1.2.4-alpha.0

4 years ago

1.2.0-alpha.0

4 years ago

1.1.9

4 years ago

1.1.10

4 years ago

1.1.8

4 years ago

1.1.6

4 years ago

1.1.4

4 years ago

1.1.3

4 years ago

1.1.2

4 years ago

1.1.1

4 years ago

1.1.0

4 years ago

1.0.1

4 years ago

1.0.0

4 years ago