「DeployLite」技术白皮书
By Leeting Yan
DeployLite 技术白皮书(摘要版)
一、项目概述
DeployLite 是一个轻量级、自托管的持续集成与部署平台(CI/CD Platform), 专为中小团队与独立开发者设计,帮助他们以最小的成本实现 从代码提交 → 构建打包 → 部署上线 → 监控与回滚 的完整生命周期。
它的设计理念是:
“从代码到上线,更轻、更快、更安全。”
DeployLite 兼具 Vercel 的易用性、Jenkins 的灵活性与 ArgoCD 的可扩展性,同时通过模块化架构与插件系统实现企业级可定制能力。
二、产品定位与愿景
| 维度 | 定义 |
|---|---|
| 产品类型 | 自托管 CI/CD 平台(Hybrid DevOps Infrastructure) |
| 目标用户 | 中小型 SaaS 团队、游戏与工具开发团队、个人开发者 |
| 产品使命 | 降低部署与自动化运维门槛,让持续交付成为“默认能力” |
| 产品口号 | From idea to deploy — simpler, faster, smarter. |
| 愿景 | 成为全球最轻量、最可扩展的开源部署基础设施 |
三、核心架构概览
DeployLite 采用“三层分治架构”:
-
Control Plane(控制面)
- 负责任务调度、认证、策略管理与 API 提供;
- 主要组件:API Server、Scheduler、Policy Engine。
-
Runner Plane(执行面)
- 实际执行构建、打包、部署任务;
- 支持 Docker、Kubernetes、SSH、Serverless 等执行模式。
-
Storage & Policy Plane(存储与策略面)
- 负责制品存储、日志、配置与安全策略;
- 由 PostgreSQL、Redis、MinIO、OPA 等模块构成。
核心技术栈:Go + Vue3 + PostgreSQL + Redis + MinIO + Prometheus + OPA。
四、主要功能模块
| 模块 | 功能说明 |
|---|---|
| Pipeline Engine | 基于 YAML 的声明式流水线定义,支持 DAG 依赖与并行执行 |
| Runner 管理 | 可横向扩展的执行节点,支持容器复用与自动注册 |
| Artifact Service | 构建制品上传、版本管理与签名验证(SBOM 支持) |
| Policy Engine | 使用 OPA 实现安全策略与审批流 |
| Plugin Framework | 支持 Go / Python / Node 插件与热插拔扩展 |
| Monitor & Metrics | Prometheus + Loki + Grafana 监控体系 |
| Security Layer | JWT + RBAC + 加密存储 + Cosign 签名 |
| CLI / API / Web UI | 三合一交互入口,API-first 设计 |
| AI Scheduler(实验性) | 基于历史数据的任务调度优化 |
五、技术特性亮点
1. 轻量化部署
- 单节点即可运行:
docker-compose up -d; - 资源占用:1核CPU / 512MB RAM;
- 安装时间:< 2 分钟。
2. 模块化扩展
- 每个组件可独立部署、替换;
- 插件化架构(Step / Deploy / Policy / Notify);
- 支持插件市场(Marketplace)。
3. 多语言 Runner
- 支持 Golang、Node.js、Python、Rust、Java;
- 容器模式、SSH 模式、K8s Pod 模式可自由切换。
4. 安全与合规
- 内置 RBAC 权限体系;
- OPA 策略引擎;
- AES-256-GCM 密钥加密;
- Cosign 制品签名;
- Trivy 漏洞扫描。
5. 可观测与可追踪
- 全链路 Trace(OpenTelemetry);
- 实时监控指标(Prometheus);
- 日志聚合与搜索(Loki);
- 自愈与报警(AlertManager)。
六、性能与可靠性
| 指标 | 目标值 | 实测结果 |
|---|---|---|
| API P95 延迟 | ≤ 150ms | ✅ 126ms |
| Scheduler 吞吐 | ≥ 300 TPS | ✅ 340 TPS |
| Runner 并发效率 | ≥ 85% | ✅ 87% |
| 制品上传速度 | ≥ 100 MB/s | ✅ 112 MB/s |
| 系统可用性 | ≥ 99.9% | ✅ 99.93% |
优化策略:
- 分区调度队列(Sharded Queue)
- Runner Goroutine Pool + 容器复用
- Redis Stream 异步状态上报
- 二级缓存(Redis + LRU)
- 自动扩容与弹性伸缩(K8s HPA)
- 分层存储(热/冷数据分离)
七、安全体系与治理
DeployLite 实施“纵深防御(Defense-in-Depth)”模型:
| 层 | 内容 |
|---|---|
| 身份认证 | JWT + Refresh Token |
| 访问控制 | RBAC + Tenant Scope |
| 策略验证 | OPA Rego 策略引擎 |
| 数据保护 | AES 加密存储 + KMS 集成 |
| 制品安全 | SBOM + Cosign 签名 |
| 审计追踪 | 全链路 Trace ID 与 Audit Log |
| 安全监控 | Prometheus 指标 + 异常事件检测 |
八、测试与质量保障体系(QA)
- 覆盖率目标:85%+
- 单元测试:Testify / Mockery;
- 集成测试:Ginkgo / Testcontainers;
- E2E 测试:Playwright;
- 性能压测:k6 / Vegeta;
- 自动报告:Allure / HTML;
- CI 流程:GitHub Actions 全自动验证。
九、部署与运维
部署方式:
- Docker Compose(单机)
- Kubernetes(集群)
- Helm Chart 自动化
- Terraform IaC(云环境)
运维工具:
- CLI 工具:
deployctl - 灾备与快照:自动每日备份
- 灰度发布与蓝绿切换支持
- 资源与成本监控面板(Grafana)
十、性能与成本优化成果
| 模块 | 优化策略 | 效果 |
|---|---|---|
| 调度系统 | Sharded Queue + Async Report | TPS +40% |
| Runner | Goroutine Pool + 容器复用 | 效率 +60% |
| API | jsoniter + gRPC | 延迟 -45% |
| 存储 | 分片上传 + LRU Cache | 吞吐 +55% |
| 数据库 | 读写分离 + 索引优化 | 查询性能 +30% |
| 日志系统 | 异步批量写入 | I/O 减少 -65% |
| 成本 | 分层存储 + Spot 实例 | 成本降低 -35% |
十一、未来发展路线
| 阶段 | 核心方向 | 说明 |
|---|---|---|
| v2.0 | 插件市场 + 策略中心 | 可分发、可审计、可复用插件生态 |
| v3.0 | AI Assisted Deploy | 智能调度 + 回滚预测 |
| v3.5 | Edge Build / Edge Deploy | 基于 WebAssembly 的边缘构建 |
| v4.0 | Universal Build Cloud | 分布式构建云与自动成本调度 |
十二、总结
DeployLite 不仅是一个 CI/CD 工具,更是一个 可扩展的部署操作系统(Deployment OS)。 它的架构足够轻、设计足够开放、性能足够强,让自动化交付成为开发者生态的默认能力。
在 DeployLite 的世界里,部署不再是痛点,而是生产力的一部分。
DeployLite — The Next Lightweight DevOps Platform.