2020 年 10 月 23日,阿里巴巴正式宣布开源其首个 Serverless 开发者平台 Serverless Devs。历经近一年精心打磨,今天 Serverless Devs 2.0 正式版全新发布。Serverless Devs 2.0 在平台能力、应用模板以及开发者套件方面能力提升,更加贴近开发者的实际生产诉求,使用体验再提升,让开发者像使用手机一样玩转 Serverless,快速享受 Serverless 技术红利。
![]()
Serverless Devs 是一个开源开放的 Serverless 开发者平台,Serverless Devs 也是业内首个支持主流 Serverless 服务/框架的云原生全生命周期管理的平台,致力于为开发者打造 Serverless 应用开发一站式服务, 帮助解决目前的工具链之困,让开发者一键体验多云产品,极速部署 Serverless 项目。 Serverless Devs 由"两端一中心体系"组成:
-
Serverless Devs CLI (命令行客户端),适合极客开发人员使用,小巧轻便,易于集成
-
Serverless Desktop (桌面客户端) ,具备更广泛的适用性,拥有开发,构建,部署,调试,可观测等全方位应用管理能力
-
Serverless Hub 应用中心,提供应用的集散和分发,作为公共服务提供给 开发者或贡献者适用。
1、平台能力提升
1、全新桌面客户端 Serverless Desktop
Serverless Devs 2.0 对桌面客户端进行了精细设计,对比 1.0,2.0 更具企业级服务能力:
- 重新对交互流程进行设计,采用新的视觉体系 b-design。更具美感和实用主义;
- 具备企业级的应用全生命周期管理能力,从开发、构建、部署、端云调试、压测到可观测做到全面兼顾。
![]()
Serverless Desktop 构建 todolist 应用
2、更高效的命令行客户端 Serverless CLI
命令行客户端及核心组件使用 @vercel/ncc 编译成一个文件,组件的首次使用体验由 5 分钟降至 30 秒以内。另外,组件版本静默更新,用户本地不会缓存多个版本。用户无感升级,本机内存相比 1.0 版本减少 2/3 以上。 新增无配置执行指令cli ,该指令完全脱离 yaml 进行组件执行,通过 cli 命令提高以下场景能力:
- 与自动化流程进行结合更简便,比如 gitops 流程;
- 融合更多资源管理相关能力,例如查看阿里云函数计算的服务列表、函数列表、触发器列表,自定义域名列表等;
![]()
s cli fc-api 查看全部无配置阿里云函数计算的api 指令
3、全新的配置规范
配置文件是 ServerlessDevs 应用的灵魂组成部分,也是开发者在日常工作中打交道最频繁的部分,配置规范的设计直接影响 Serverless 应用的开发体验,Serverless Devs 2.0 配置规范全新设计:
-
更具扩展性:通过引入全局的配置,例如 name,access 等可以将 1.0 时代的资源管理正式提升到应用管理维度,并具备一定的可拓展性,包括可以在全局增加 stage 等环境管理配置的字段等;
-
更易学习:Serverless Devs 2.0 全新 Yaml 规范,在一定程度上与现有的工具规范标准进行了部分的对齐,可以大幅度降低开发者学习难度,更易应用。
1.0 和 2.0的配置比较
4、全新的数据源设计
Serverless Devs 2.0 提出的 Registry 概念,同时支持 GitHub、Gitee 和官方源,相比传统数据源都完全由官方掌控,Registry 开放源设计可以由用户自己选择适合的数据仓储,利用 Serverless Devs 规范建设自己的应用中心,管理自己应用和组件。
![]()
registry 源选择
2、应用模板增强
如果说 Serverless Devs 1.0 的应用模板是以传统web框架为主。Serverless Devs2.0 的应用模板则更专注于现代化的 Serverless 应用领域,我们提供了平台专有的 JAMStack 应用模版,以及 Serverless 版本 SSR 应用模版。
1、使用 Jamstack 应用模版一键建站
安装 Serverless Devs 命令行客户端,一行指令拥有专业的技术站点:
s init docsite-basic
![]()
2、Serverless 化的 SSR 实现
安装 Serverless Desktop 桌面客户端,一键拥有 SSR 技术站点:
![]()
3、上线更多应用模版
Serverless Devs 2.0 提供了更加完善的传统框架迁移方案和策略,提供超过 20 种 Web 框架,让开发者可以近乎 0 成本完成传统框架的一键迁移。
3、更实用的开发者套件
开发者 SDK 是 Serverless 应用开发体验的重要环节,2.0 提供了 Serverless 应用开发者套件, 减少开发者对接 BaaS 服务的成本。目前已经集成了 GitHub 服务,OSS 服务, tablestore 数据库。 快速上手 REST API 应用:
s init dk-http
![]()
- 2021年9月,完成百度云函数以及华为云函数工作流的对接;
- 2021年10月,完成云端调试能力,并测试上线;完成与 Terraform 能力的部分融合,兼容;
- 2021年11月,发布 Serverless Devs 的 Desktop 2.0,将会与科学发布,线上异动等能力进一步融合,与主流 CI/CD平台/工具,完成对接;
- 2022年2月,完成 VScode 插件、云 IDE 等支持;
我们会一直坚定的朝着为开发者打造最优秀的 Serverless 开发者工具而努力。
一行代码构建个人技术网站(请提前准备好 Nodejs 环境)。
npm i @serverless-devs/s -g && s init docsite-basic
http://www.serverless-devs.com/
https://github.com/Serverless-Devs/Serverless-Devs
https://serverlessdevs.resume.net.cn/zh-cn/desktop/index.html
http://serverless-dk.oss.devsapp.net/docs/tutorial-dk/intro/react
https://serverlessdevs.resume.net.cn/zh-cn/cli/index.html
https://serverlesshub.resume.net.cn/#/hubs/special-view
场景体验地址:https://developer.aliyun.com/adc/expo/serverless