所有计划

从任何 Git 提供商推送即部署

连接 GitHub、GitLab 或 Bitbucket。每次推送触发构建。每个 PR 获得预览环境。零 CI/CD 配置。

适用于所有 Git 工作流

Webhook、凭据、分支过滤和部署自动化 -- 全部原生处理。

GitHub、GitLab、Bitbucket
与所有主要 Git 提供商的原生 webhook 集成
HMAC 验证
对每个传入的 webhook 进行 SHA-256 签名验证
推送即自动部署
推送到配置的分支,sh0 自动部署
令牌和 SSH 密钥支持
部署令牌、个人访问令牌、PEM 和 OpenSSH 密钥
加密凭据存储
SSH 密钥指纹提取和 AES-256-GCM 加密存储
应用级 webhook 密钥
每个应用独立的 webhook 密钥实现隔离
19 种技术栈自动检测
Node.js、Python、Go、Rust、PHP、Java、.NET、Next.js、Django 等 10 余种 -- 自动检测
15 个 Dockerfile 模板
为每种检测到的技术栈生成生产就绪的多阶段 Dockerfile

19 种技术栈自动检测

推送代码。sh0 识别框架,生成生产就绪的 Dockerfile 并构建应用 -- 零配置。

Node.js
Bun
Deno
Python
PHP
Go
Rust
Ruby
Java
.NET
Next.js
Nuxt
SvelteKit
Astro
Django
FastAPI
Laravel
Static HTML
Dockerfile

工作原理

01

连接仓库

粘贴仓库 URL 并添加部署令牌或 SSH 密钥。sh0 支持所有主要 Git 提供商的公共和私有仓库。

02

设置 webhook

sh0 生成唯一的 webhook URL 和密钥。将它们粘贴到 Git 提供商的 webhook 设置中 -- 只需 30 秒。

03

推送代码

推送到配置的分支。sh0 接收 webhook,克隆仓库,检测技术栈,构建并部署 -- 全自动。

04

获取通知

部署钩子将结果发送到 Slack、Discord、Telegram、邮件或任何 webhook 端点。即时了解部署成功或失败。

部署流水线

接收 Webhook
验证签名
克隆并检测技术栈
健康检查
构建镜像
蓝绿部署
路由与通知

从 git push 到在线 URL -- 全自动,零停机

Git Deploy
$ git push origin main
从 GitHub 接收 Webhook
验证 HMAC-SHA256 签名... 有效
克隆仓库(depth=1)...
检测技术栈: Next.js 14
运行健康检查... 87/100 (2 个警告)
生成 Dockerfile(多阶段,Alpine)...
构建镜像:sh0-myapp:a1b2c3d
启动新容器...
健康检查: OK
蓝绿切换:将流量路由到新容器
旧容器已停止(30 秒优雅期)
34 秒内部署完成。已上线:https://myapp.example.com

一应俱全

蓝绿部署

零停机部署。sh0 在旧版本旁启动新版本,进行健康检查后切换流量。失败则立即回滚。

预览环境

每个拉取请求都获得独立的隔离环境和唯一 URL。在合并到生产环境前实时审查更改。

实时构建日志

通过 WebSocket 流式传输实时观看构建和部署过程。每一行实时显示在仪表盘中。

签名验证

每个 webhook 都使用 HMAC SHA-256 验证。伪造或篡改的载荷在任何操作之前被拒绝。

加密凭据

部署令牌和 SSH 私钥使用 AES-256-GCM 静态加密。永远不会以明文存储,永远不会记录在日志中。

分支过滤

仅从特定分支部署。推送到 main 部署到生产环境。推送到 staging 部署到暂存环境。

19 种技术栈自动检测

sh0 从 package.json、requirements.txt、go.mod、Cargo.toml 或 15 种其他标记中识别框架。无需配置 -- 推送即部署。

代码健康评分

每次构建前检查 34 条安全和配置规则。自动捕获硬编码密钥、调试模式、缺少 .dockerignore 等 31 个以上问题。

传统方式

  • x 编写 CI/CD 流水线配置文件
  • x 手动创建和维护 Dockerfile
  • x 将镜像推送到容器注册中心
  • x SSH 到服务器,docker pull,重启服务
  • x 配置 nginx 和 SSL 证书
  • x 每次部署都有停机时间

sh0 的方式

  • 连接仓库,推送代码,完成部署
  • 技术栈自动检测,构建自动生成
  • 直接在服务器上构建和部署
  • 蓝绿部署,零停机
  • Caddy 自动配置 SSL
  • 60 秒内上线,每次推送

常见问题

支持私有仓库吗? +
可以。添加部署令牌(GitHub、GitLab)或个人访问令牌,或上传 SSH 密钥。sh0 加密存储凭据,仅在克隆操作期间使用。
sh0 支持 monorepo 吗? +
支持。您可以为仓库中的每个应用配置根目录。sh0 仅在该目录中的文件发生变化时才构建和部署。
可以只从特定分支部署吗? +
可以。每个应用有一个配置的部署分支(如 main、production、staging)。推送到其他分支会被忽略,除非您为拉取请求启用了预览环境。
webhook 投递失败会怎样? +
Git 提供商会自动重试 webhook 投递(GitHub 最多重试 3 天)。sh0 也会记录所有收到的 webhook,您可以从仪表盘手动触发重新部署。
sh0 自动检测哪些技术栈? +
sh0 检测 19 种技术栈:Node.js(npm、yarn、pnpm、bun)、Deno、Python(Django、FastAPI、Flask)、Go、Rust、Java(Maven、Gradle)、PHP(Laravel)、Ruby、.NET、Next.js、Nuxt、SvelteKit、Astro 和静态 HTML 站点。如果未检测到您的技术栈,可以提供自定义 Dockerfile。
sh0 会自动生成 Dockerfile 吗? +
是的。对于每种检测到的技术栈,sh0 生成生产就绪的多阶段 Dockerfile,使用 Alpine/slim 基础镜像、非 root 用户执行、HEALTHCHECK 指令和框架特定优化。如果您愿意,也可以使用自己的 Dockerfile。

每次推送自动部署。

连接仓库,推送代码,获得带 SSL 的在线 URL。无需维护 CI/CD 流水线。无需 SSH 到服务器。