gotempsh/temps
GitHub: gotempsh/temps
Temps 是一个用 Rust 编写的开源自托管部署平台,将 Git 部署、反向代理、可观测性、托管数据库和事务邮件整合为单一二进制文件,帮助团队在自有服务器上零成本替代多个 SaaS 服务。
Stars: 379 | Forks: 16
From bare server to fully deployed — in under 3 minutes (166s).
| **Git Push 即部署** 推送到 Git,Temps 自动构建并部署。自动检测框架,创建预览 URL,并处理零停机时间的滚动部署。  | **内置 Analytics 与 Session Replay** 包含漏斗、访客追踪的 Web 分析以及会话回放 (rrweb)。兼容 Sentry 的错误追踪。无需外部服务。  |
| **基于 Pingora 的代理** 运行在 Cloudflare 的 Pingora 引擎上。通过 Let's Encrypt (HTTP-01 & DNS-01) 实现 Auto TLS,支持自定义域名以及完整的请求日志。  | **托管服务** 与你的应用程序一起配置 Postgres、Redis、S3 (MinIO) 和 MongoDB。Temps 负责处理创建、备份和拆除。  |
| **请求日志与代理可见性** 记录每一个 HTTP 请求,包含方法、路径、状态、响应时间和路由元数据。无需额外工具即可进行过滤和搜索。  | **监控与告警** 监控部署失败、运行时崩溃、证书过期和备份健康状况。在问题波及用户之前收到通知。  |
| **事务性邮件** 通过 UI 界面添加带有 DKIM 记录的发件人域名。使用 `@temps-sdk/node-sdk` 发送事务性邮件。无需外部邮件服务。 | **AI 就绪 (MCP Server)** 内置 Model Context Protocol server (`@temps-sdk/mcp`),使得 AI 智能体可以通过自然语言进行部署、监控和管理基础设施。 |
支持任意语言、任意框架。自动检测,或者你也可以自带 Dockerfile。
## 快速开始 ``` curl -fsSL https://temps.sh/deploy.sh | bash ``` **测试环境:** Ubuntu 24.04 / 22.04 | 同时兼容 macOS ## Temps 可替代的产品 | 你将获得的功能 | 替代付费产品 | |---|---| | Git 部署 + 预览 URL | Vercel / Netlify / Railway ($20+/月) | | Web 分析 + 漏斗 | PostHog / Plausible ($0-450/月) | | Session Replay | PostHog / FullStory ($0-2000/月) | | 错误追踪 | Sentry ($26+/月) | | 可用性监控 | Better Uptime / Pingdom ($20+/月) | | 托管 Postgres/Redis/S3 | AWS RDS / ElastiCache ($50+/月) | | 事务性邮件 + DKIM | Resend / SendGrid ($20-100/月) | | 请求日志 + 代理 | Cloudflare ($0-200/月) | | **使用 Temps 的总成本** | **$0 (自托管)** | ## Temps 与其他替代方案对比 | 功能特性 | Temps | Coolify | Dokploy | CapRover | Dokku | Railway | Vercel | |---|:---:|:---:|:---:|:---:|:---:|:---:|:---:| | 自托管 | 是 | 是 | 是 | 是 | 是 | 否 | 否 | | 单一二进制文件安装 | 是 | 否 | 否 | 否 | 否 | -- | -- | | Git push 部署 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | | 多节点 / 集群 | 否 | 是 | 是 | 是 | 否 | 是 | 是 | | Web 分析 | 是 | 否 | 否 | 否 | 否 | 是 | 是 | | Session Replay | 是 | 否 | 否 | 否 | 否 | 否 | 否 | | 错误追踪 (兼容 Sentry) | 是 | 否 | 否 | 否 | 否 | 否 | 否 | | 可用性监控 | 是 | 否 | 否 | 否 | 否 | 否 | 否 | | 事务性邮件 + DKIM | 是 | 否 | 否 | 否 | 否 | 否 | 否 | | 托管 Postgres/Redis/S3 | 是 | 是 | 是 | 部分 | 插件 | 是 | 附加组件 | | Pingora 代理 (Cloudflare 级别) | 是 | 否 | 否 | 否 | 否 | 否 | 否 | | Auto TLS (HTTP-01 + DNS-01) | 是 | 是 | 是 | 是 | 插件 | 是 | 是 | | 请求级别日志 | 是 | 否 | 否 | 否 | 否 | 部分 | 部分 | | 预览部署 | 是 | 是 | 是 | 否 | 否 | 是 | 是 | | 使用 Rust 构建 | 是 | 否 | 否 | 否 | 否 | 否 | 否 | | 免费且开源 | 是 | 是 | 是 | 是 | 是 | 否 | 否 | ## 技术栈 - **后端:** Rust, Axum, Sea-ORM, Pingora (Cloudflare 的代理引擎), Bollard (Docker API) - **前端:** React 19, TypeScript, Tailwind CSS, shadcn/ui - **数据库:** PostgreSQL + TimescaleDB - **架构:** 30+ workspace crates,三层服务架构 ## SDK | 包名 | 描述 | |---|---| | [`@temps-sdk/node-sdk`](https://www.npmjs.com/package/@temps-sdk/node-sdk) | 平台 API 客户端 + 兼容 Sentry 的错误追踪 | | [`@temps-sdk/react-analytics`](https://www.npmjs.com/package/@temps-sdk/react-analytics) | React 分析、会话回放、Web Vitals、参与度追踪 | | [`@temps-sdk/kv`](https://www.npmjs.com/package/@temps-sdk/kv) | Serverless 键值存储 | | [`@temps-sdk/blob`](https://www.npmjs.com/package/@temps-sdk/blob) | 文件存储 (兼容 S3) | | [`@temps-sdk/cli`](https://www.npmjs.com/package/@temps-sdk/cli) | 命令行界面 | | [`@temps-sdk/mcp`](https://www.npmjs.com/package/@temps-sdk/mcp) | 面向 AI 智能体的 Model Context Protocol 服务器 |快速示例
**Analytics** -- 包裹你的 React 应用,其余都是自动的: ``` import { TempsAnalyticsProvider } from '@temps-sdk/react-analytics'; export default function App({ children }) { return
[temps.sh](https://temps.sh) | [文档](https://temps.sh/docs) | [GitHub](https://github.com/gotempsh/temps)
标签:CD, Git推送部署, Paas, Rust, Sentry兼容, Vercel替代, Web分析, 事务性邮件, 会话回放, 全栈, 分析, 前端部署, 单一二进制文件, 可视化界面, 后端部署, 开源, 持续部署, 服务器管理, 测试用例, 特权提升, 监控, 网站监控, 网络流量审计, 自动化部署, 自托管, 请求拦截, 通知系统, 部署平台, 错误追踪, 零停机部署