Full life cycle cross providers serverless application management for your fast-growing business.
npm install @geek-fun/serverlessinsight





为快速增长的业务提供全生命周期跨云服务商的 Serverless 应用管理
---
ServerlessInsight 是一个强大的 Serverless 框架,用于跨多个云服务商管理 Serverless 应用。它提供了统一的接口来部署、管理和调试 Serverless 函数和资源,使用基础设施即代码(IaC)原则。
无论您是在 AWS、阿里云、华为云还是其他服务商上构建应用,ServerlessInsight 都能简化您的开发工作流程:
- 多云支持 - 使用单一工具与多个云服务商协作
- 基础设施即代码 - 使用 YAML 定义您的 Serverless 基础设施
- 本地开发 - 在部署前本地测试您的函数
- 类型安全模板 - 在部署前验证您的配置
---
- 🌍 多云服务商支持 - 部署到阿里云、华为云等多个平台
- 📦 统一配置 - 所有服务商使用单一 YAML 格式
- 🚀 快速部署 - 使用单个命令部署 Serverless 应用
- 🔍 模板验证 - 在部署前验证您的 IaC 模板
- 🏠 本地测试 - 在本地运行和调试 Serverless 函数
- 🔄 模板生成 - 生成特定云服务商的 IaC 模板
- 🌐 API 网关集成 - 为您的函数配置 HTTP 端点
- 💾 资源管理 - 管理存储、数据库和其他云资源
- 🔐 安全优先 - 内置验证和安全最佳实践
- 📊 全面的日志记录 - 调试和监控您的应用
---
ServerlessInsight 支持以下云服务商:
| 云服务商 | 函数 | API 网关 | 存储 | 数据库 | 状态 |
|----------|------|----------|------|--------|------|
| 阿里云 | ✅ FC3 | ✅ API 网关 | ✅ OSS | ✅ RDS, OTS, ESS | 稳定 |
| 华为云 | ✅ FunctionGraph | 🚧 即将推出 | 🚧 即将推出 | 🚧 即将推出 | 测试版 |
| AWS | 🔜 计划中 | 🔜 计划中 | 🔜 计划中 | 🔜 计划中 | 计划中 |
| Azure | 🔜 计划中 | 🔜 计划中 | 🔜 计划中 | 🔜 计划中 | 计划中 |
| Google Cloud | 🔜 计划中 | 🔜 计划中 | 🔜 计划中 | 🔜 计划中 | 计划中 |
| 腾讯云 | 🔜 计划中 | 🔜 计划中 | 🔜 计划中 | 🔜 计划中 | 计划中 |
---
- Node.js 16.x 或更高版本
- 云服务商凭证(阿里云 AccessKey、华为云凭证等)
使用 npm 全局安装 ServerlessInsight:
``bash`
npm install -g @geek-fun/serverlessinsight
验证安装:
`bash`
si --version
---
`bash验证您的 Serverless 配置
si validate
---
💡 示例
ServerlessInsight 使用简单的 YAML 格式来定义您的 Serverless 基础设施:
`yaml
version: 0.0.1
provider:
name: aliyun
region: cn-hongkongservice: my-api-service
functions:
hello_function:
name: hello-world-fn
code:
runtime: nodejs18
handler: index.handler
path: ./src
memory: 512
timeout: 10
environment:
NODE_ENV: production
events:
api_gateway:
type: API_GATEWAY
name: my-api-gateway
triggers:
- method: GET
path: /api/hello
backend: ${functions.hello_function}
`更多示例请查看 samples 目录:
- API 网关示例 - 部署带 HTTP 端点的函数
- 存储示例 - 配置 OSS 存储桶
- 数据库示例 - 设置 RDS 数据库
- 表格存储示例 - 配置 OTS 表格存储
- Elasticsearch 示例 - 部署 Elasticsearch Serverless
- 自定义域名示例 - 配置自定义域名
- GPU 函数示例 - 部署支持 GPU 的函数
- 华为云示例 - 部署到华为云 FunctionGraph
---
🔧 本地开发
`bash
克隆和设置
git clone https://github.com/geek-fun/serverlessinsight.git
cd serverlessinsight
npm install构建并链接用于开发
npm run build
npm link运行本地开发服务器
si local my-stack -f serverless.yml -s local运行测试
npm test检查代码规范
npm run lint:check
`---
📘 文档
完整文档请访问 serverlessinsight.geekfun.club
其他资源:
- 快速开始指南
- 配置参考
- API 文档
- 最佳实践
---
🤝 贡献
我们欢迎社区的贡献!以下是您可以帮助的方式:
1. Fork 仓库
2. 创建功能分支 (
git checkout -b feature/amazing-feature)
3. 提交您的更改 (git commit -m 'Add amazing feature')
4. 推送到分支 (git push origin feature/amazing-feature`)---
加入我们的社区以获取帮助、分享想法和贡献:
- GitHub Issues - 报告错误或请求功能
- 官方网站 - serverlessinsight.geekfun.club
---
本项目采用 Apache License 2.0 许可证 - 详见 LICENSE 文件。
---
ServerlessInsight 使用以下优秀技术构建:
- Node.js - JavaScript 运行时
- TypeScript - 类型安全的 JavaScript
- Commander.js - CLI 框架
- 阿里云 ROS CDK - 云基础设施 SDK
---