Skip to content

Documentation

Welcome to the ServerlessInsight documentation center. Here you'll find comprehensive guides and references for using ServerlessInsight.

Getting Started

New to ServerlessInsight? Start here:

Core Concepts

Infrastructure as Code

Define your serverless resources declaratively in serverlessinsight.yml. ServerlessInsight handles resource creation and management automatically.

yaml
version: 0.1.0
provider:
  name: aliyun
  region: cn-hangzhou

app: my-app
service: my-service

functions:
  my_function:
    runtime: nodejs18
    handler: index.handler
    code: artifacts/function.zip

events:
  api_gateway:
    type: API_GATEWAY
    triggers:
      - method: GET
        path: /api/*
        backend: my_function

Multi-Environment Support

Manage different environments (dev/test/prod) using stages:

yaml
stages:
  dev:
    region: cn-hangzhou
    memory: 512
  prod:
    region: cn-beijing
    memory: 2048
bash
# Deploy to development
si deploy --stage dev

# Deploy to production
si deploy --stage prod

Resource Types

ServerlessInsight supports various cloud resource types:

  • Functions - Serverless compute (Function Compute)
  • Events - Triggers (API Gateway, SQS, Timer, etc.)
  • Databases - Database resources (RDS, Elasticsearch, etc.)
  • Tables - NoSQL databases (Table Store, DynamoDB, etc.)
  • Buckets - Object storage (OSS, S3, etc.)

Supported Cloud Providers

Currently Supported

  • Alibaba Cloud - Full support for FC, API Gateway, RDS, OSS, etc.
  • 🚧 Huawei Cloud - In development
  • 🚧 Tencent Cloud - In development

Planned

  • AWS Lambda & API Gateway
  • Google Cloud Functions
  • Azure Functions

Command Line Interface

Installation

bash
npm install -g @geek-fun/serverlessinsight

Basic Commands

bash
# Validate configuration
si validate

# Deploy application
si deploy --stage dev

# Run locally
si local --stage dev

# Destroy resources
si destroy --stage dev

Learning Resources

Tutorials

Best Practices

  • Environment Isolation - Use stages to separate environments
  • Variable Reuse - Extract common configurations to vars
  • Resource Naming - Use meaningful names with environment info
  • Tag Management - Add tags for better resource management
  • Security - Use environment variables for sensitive information

Reference

Getting Help

  • FAQ - Frequently asked questions
  • GitHub Issues - Report bugs and request features
  • Twitter - Follow for updates and announcements
  • Email - Contact us directly

Contributing

We welcome contributions from the community:

  • 🐛 Report bugs
  • 💡 Suggest new features
  • 📝 Improve documentation
  • 🔧 Submit code changes

Please see our Contributing Guide for more information.

Community

Join the ServerlessInsight community:


Made with ❤️ by GeekFun

Last updated: