SACTL Gateway 支持 4 种部署方式: Docker Compose 单机自托管、Managed Cloud 托管、Kubernetes Helm 生产部署、Cloudflare Workers 边缘代理。下面先给一张对比决策表,然后是每种方式的完整步骤。给 IT / SRE 团队的私有部署指南,不写营销话术。
按团队规模、运维能力、合规要求选。一句话: 个人/小团队走 Managed,中大团队走 K8s Helm,有特殊隔离要求走 Self-Hosted,海外项目方走 Edge。
| 对比维度 | Self-Hosted (Compose) | Managed Cloud | Kubernetes (Helm) | Cloudflare Edge |
|---|---|---|---|---|
| 典型场景 | PoC / 内部测试 / 单租户私有 | 中小团队不想运维 | 中大型生产、多 AZ HA | 海外项目方、200+ 国家加速 |
| 上线时间 | 30 分钟 | 10 分钟 | ~1 小时 | 45 分钟 |
| 运维负担 | 自己扛全栈 | SACTL 扛 | K8s 运维 + 外置中间件 | Cloudflare 平台 + 自建后端 |
| SLA | 自定 | 99.5% (Managed 标准) | 自定 (取决于集群) | Cloudflare SLA |
| 数据合规 | 完全自主 | SACTL 合规栈 | 完全自主 | 边缘代理 + 自建后端 |
| 横向扩容 | 手动 (单机) | 透明 | HPA 自动 (3 → 30) | 自动 (Workers 全球) |
| 成本结构 | 1 台服务器 + 上游 token | 按 token + 月度服务费 | K8s + RDS/ES/Vault + 上游 | Workers 计费 + 后端 |
| 升级方式 | docker compose pull && up -d | SACTL 自动滚动 | helm upgrade | wrangler deploy |
适合: PoC、内部测试、单租户私有部署、开发环境。一台 Linux 服务器 (4 vCPU / 8GB RAM 起) 跑全栈。
git clone https://github.com/sactl/sactl-api.git cd sactl-api # 复制 env 模板,填上游 key + OAuth + SMTP cp .env.example .env vim .env docker compose up -d
make init # 做 4 件事: # 1. vault operator init + unseal (5 keys, threshold 3) # 2. 运行 goose migrate # 3. 创建 default tenant + admin user # 4. 生成第一条 Virtual Key,打印一次 (sk-xa-prod-***)
适合: 中小团队、不想运维基础设施、希望按月结算的客户。SACTL 官方托管全栈 (PostgreSQL、Redis、Vault、MinIO、监控告警),你只对接 API。
具体方案聊 Telegram,价格按用量定。
适合: 中大型客户、需要多 AZ 高可用、希望复用现有 RDS / ElastiCache / Vault 中间件、需要 HPA 自动扩缩容。
gatewaySidecar:
replicas: 6
resources:
requests: {cpu: "500m", memory: "512Mi"}
limits: {cpu: "2", memory: "2Gi"}
hpa:
enabled: true
minReplicas: 3
maxReplicas: 30
targetCPUUtilizationPercentage: 60
postgres:
external: true
dsn: "postgres://sactl:***@rds.internal:5432/sactl?sslmode=require"
redis:
external: true
addr: "elasticache.internal:6379"
minio:
external: true
endpoint: "s3.amazonaws.com" # 或直接用 AWS S3
vault:
external: true
addr: "https://vault.internal:8200"
approle: {role_id: "...", secret_id: "..."}# 添加 repo helm repo add sactl https://charts.sactl.ai helm repo update # 首次安装 helm install sactl sactl/sactl-gateway \ -f values.prod.yaml \ -n sactl --create-namespace # 升级到指定版本 helm upgrade sactl sactl/sactl-gateway \ -f values.prod.yaml --version=N # 回滚 helm rollback sactl PREVIOUS
适合: 海外项目方、用户分布在 200+ 国家、对国际加速敏感。把认证、限流、上游路由推到 Cloudflare 边缘,减少跨地域延迟。
仓库子目录 deploy/edge-proxy/cloudflare-workers/,包含 Worker 代码、wrangler.toml 模板、KV namespace 定义、CF Rate Limiting Rules 配置。
cd deploy/edge-proxy/cloudflare-workers wrangler login # 改 wrangler.toml: account_id / kv_namespaces.id / routes vim wrangler.toml # 灌 secrets wrangler secret put SACTL_UPSTREAM_URL wrangler secret put SACTL_VAULT_TOKEN # 部署 wrangler deploy # 灰度: 先切 5%,观察 24h # CF Dashboard → Workers Routes → 设置流量百分比
不确定走 Self-Hosted 还是 Managed?加 Telegram 客服,我们给你 30 分钟评估 + 方案建议。免费。