跳转到主要内容

这是本节的多页打印视图。 .

返回本页常规视图.

架构概述

Piglet 里有什么,怎么组织

Piglet 是什么

Piglet 是专为 AI 辅助编程设计的 Agentic Postgres 运行时。

它不只是一个数据库,而是一个完整的云端开发环境:从一台 0.64 元的裸 VM,到完整的生产级网站,开箱即用。

产品本质

Piglet 是一个"缝合怪"——它集成了:

能力 对标产品 Piglet 提供
数据库即服务 Neon, Supabase PostgreSQL + PITR 时间旅行
云端 IDE GitHub Codespaces VS Code Server + Jupyter
AI 编程 Cursor, Windsurf Claude Code 原生支持
应用托管 Vercel, Railway Nginx + Node.js + Python
监控可观测 Datadog Grafana + VictoriaMetrics

核心价值:由生产级方案(Pigsty)改造成的个人级方案——降维打击。


核心组件

┌─────────────────────────────────────────────────────────────────┐
│                         Piglet Runtime                          │
├─────────────────────────────────────────────────────────────────┤
│                                                                 │
│   ┌─────────┐   ┌─────────┐   ┌─────────┐   ┌─────────┐        │
│   │ VS Code │   │ Jupyter │   │ Claude  │   │  Your   │        │
│   │ Server  │   │   Lab   │   │  Code   │   │  App    │        │
│   └────┬────┘   └────┬────┘   └────┬────┘   └────┬────┘        │
│        │             │             │             │              │
│        └─────────────┴─────────────┴─────────────┘              │
│                          │                                      │
│                    ┌─────┴─────┐                                │
│                    │   Nginx   │  反向代理 + SSL                │
│                    └─────┬─────┘                                │
│                          │                                      │
├──────────────────────────┼──────────────────────────────────────┤
│                          │                                      │
│   ┌──────────────────────┴──────────────────────┐               │
│   │              PostgreSQL 17                   │               │
│   │         生产级数据库 + PITR 时间旅行          │               │
│   └──────────────────────┬──────────────────────┘               │
│                          │                                      │
│   ┌──────────────────────┴──────────────────────┐               │
│   │               JuiceFS (PITRFS)               │               │
│   │        文件系统也能时间旅行的秘密武器          │               │
│   └─────────────────────────────────────────────┘               │
│                                                                 │
├─────────────────────────────────────────────────────────────────┤
│   ┌─────────────┐   ┌─────────────┐   ┌─────────────┐          │
│   │  Grafana    │   │ Victoria    │   │   Loki      │          │
│   │  监控面板    │   │  Metrics    │   │   日志      │          │
│   └─────────────┘   └─────────────┘   └─────────────┘          │
└─────────────────────────────────────────────────────────────────┘

组件清单

组件 角色 访问方式
Nginx 反向代理,SSL 终止,静态文件托管 :80, :443
VS Code Server 网页版 IDE,支持远程 SSH /code
JupyterLab 数据科学笔记本 /jupyter
PostgreSQL 17 主数据库,带 340+ 扩展 :5432
JuiceFS 分布式文件系统(PITRFS) ~/data
VictoriaMetrics 时序指标存储 :8428
Grafana 监控仪表盘 /grafana
Loki 日志聚合 -

Agentic 设计

Piglet 的核心设计理念是 Human-Agent Parity(人机对等):

人看到的 = Agent 看到的,同一套工具、同一个视角。

人机分工

角色 职责
你(人类) 提出需求、派活、验收
Agent(AI) 利用环境里的工具实现需求

Agent 可能比很多用户更懂环境里有什么能用,但最终还是人类说了算。

用户画像

用户类型 他们想要什么 Agent 扮演的角色
DBA/专家 利用 Agent 自动化专业任务 执行助手
普通开发者 快速上线 Web 应用 懂行的队友
小白 只说"我要一个 XX" 全能代理

Claude.md

Piglet 提供 CLAUDE.md 文件,告诉 AI Agent 环境里有什么、能做什么:

  • 可用的数据库和连接方式
  • 可用的命令行工具
  • 文件系统结构
  • 部署和发布方式

存储架构

Piglet 的杀手锏是 PITRFS——文件系统也能像数据库一样任意时间点回滚。

┌─────────────────────────────────────┐
│          你的代码和数据              │
│         ~/data/workspace            │
└──────────────┬──────────────────────┘
               │
               ▼
┌─────────────────────────────────────┐
│            JuiceFS                  │
│     POSIX 兼容 + 时间旅行能力        │
└──────────────┬──────────────────────┘
               │
               ▼
┌─────────────────────────────────────┐
│          PostgreSQL                 │
│     元数据 + 数据块 + WAL 归档       │
└─────────────────────────────────────┘
               │
               ▼
        任意时间点恢复 (PITR)

这意味着:

  • 数据库可以回滚:标准 PostgreSQL PITR
  • 文件系统也可以回滚:基于 JuiceFS + PostgreSQL 的 PITRFS
  • 搞砸了也不怕:误删代码?回到 10 分钟前。Agent 把数据库搞崩了?一条命令恢复。

网络架构

所有服务通过 Nginx 统一暴露,支持 HTTPS:

Internet
    │
    ▼
┌─────────────────────────────────────┐
│  Nginx (:80, :443)                  │
│  - SSL 终止                          │
│  - 反向代理                          │
│  - 静态文件托管                       │
└────┬────────┬────────┬────────┬─────┘
     │        │        │        │
     ▼        ▼        ▼        ▼
  /code   /jupyter  /grafana   /*
 VS Code  Jupyter   Grafana   你的应用

与 Pigsty 的关系

维度 Pigsty Piglet
定位 企业级 PostgreSQL 发行版 个人级 Agentic 运行时
目标用户 DBA、运维、企业 个人开发者、AI 编程者
规模 多节点集群 单节点
复杂度 功能完整、配置丰富 开箱即用、极简配置
调性 专业、严谨、可靠 方便、灵活、好玩

Piglet 是 Pigsty 的精简版,继承了生产级的可靠性,但去掉了企业级的复杂性。


下一步