aptlogica/sereni-base
GitHub: aptlogica/sereni-base
SereniBase是一个开源自托管后端平台,通过集成数据库、API、认证、存储和安全服务,解决数据主权和后端开发复杂度问题。
Stars: 65 | Forks: 10
## 🚀 在线演示

**尝试在线演示:** [https://demo.serenibase.com/login](https://demo.serenibase.com/login)
_查看 SereniBase 的实际运行效果,所有功能均已启用。_
### 默认登录凭据
⭐ **如果这个项目对您有帮助,请考虑给它一个星标!**
👉 https://github.com/aptlogica/sereni-base
## 🚀 什么是 [SereniBase](https://www.aptlogica.com/sereni-base/)?
一个后端操作系统。而非另一个工具。
开发者无需再拼接独立的服务,他们得到的是一个统一的后端,其中数据库、API、身份验证、存储、邮件和安全功能已被设计为协同工作。
- 创建一个表 → 得到一个 REST API。即时生效。无需编写代码。
- JWT 身份验证、S3 存储、SMTP 邮件、ClamAV 扫描 — 全部作为微服务运行。
- 通过 REST API 或 TypeScript SDK 与您现有系统无缝集成。
- 团队可使用可视化 UI + 开发者可使用 TypeScript SDK。
- 可自托管或支持云端。完全的数据主权。零供应商锁定。


## 🔥 为什么选择 SereniBase?
大多数无代码工具在…失效之前都能工作。
| 问题 | SereniBase 解决方案 |
|--------|-------------------|
| 供应商锁定 | ✅ 自托管 |
| 可扩展性有限 | ✅ 开源 & 模块化 |
| 扩展成本高昂 | ✅ 基于基础设施的定价 |
| 隐私顾虑 | ✅ 完全的数据所有权 |
| 没有内置的文件安全 | ✅ ClamAV 在存储前对每个上传文件进行病毒扫描 |
| 需要单独的邮件服务 | ✅ 包含带有 Redis 队列和重试机制的 SMTP 微服务 |
| 拼接互不关联的工具 | ✅ 数据库 + API + 身份验证 + 存储 + 邮件 + 安全 — 一个技术栈 |
## ⚡ 主要功能
- 🗄️ 无代码 + 开发者友好
- 🔌 REST API (OpenAPI/Swagger)
- 🧩 微服务架构
- 🏢 多租户工作区
- ⚡ 动态 Schema(无迁移)
- 🔐 企业级安全(RBAC,审计日志)
## 服务架构
| 服务 | 描述 | 端口 |
|---------|-------------|------|
| **sereni-base** | 核心 REST API 服务器 | 8080 |
| **PostgreSQL** | 主数据库 | 5432 |
| **JWT Provider** | 身份验证服务 | 8081 |
| **Email Service** | SMTP 邮件通知 | 8082 |
| **Storage Provider** | 文件存储 (MinIO/S3) | 8083 |
| **Antivirus Service** | ClamAV 恶意软件扫描 | 8084 |
| **MinIO** | 对象存储 | 9000/9001 |
| **Base UI** | 前端应用 | 5050 |
## 快速开始
### 前置条件
| 需求 | 版本 | 安装 |
|-------------|---------|--------------|
| **Docker** | 20.10+ | [安装 Docker](https://docs.docker.com/get-docker/) |
| **Docker Compose** | 2.0+ | [安装 Compose](https://docs.docker.com/compose/install/) |
| **Git** | 最新版 | [安装 Git](https://git-scm.com/downloads) |
| **Make** | 最新版 | Windows: `choco install make` |
| **SMTP 访问** | - | Gmail, SendGrid, Mailgun 或自定义 SMTP |
### 安装
```
# 第一步:克隆 repository
git clone https://github.com/aptlogica/sereni-base.git
cd sereni-base
# 第二步:运行交互式设置向导
make setup
# 替代方案(不使用 Make):
# Windows:.\setup-interactive.ps1
# Linux/macOS:./setup-interactive.sh
```
安装向导将会:
- 提示输入配置(按回车使用默认值)
- 生成 `.env` 文件
- 通过 Docker Compose 启动所有服务
### 访问入口
| 服务 | URL |
|---------|-----|
| 前端 | `http://localhost:5050` |
| 后端 API | `http://localhost:8080` |
| API 文档 | `http://localhost:8080/swagger/index.html` |
| MinIO 控制台 | `http://localhost:9001` |
### 默认登录
默认凭据通过环境变量配置。请参阅 `.env.example` 进行设置。
## 命令参考
| 命令 | 描述 |
|---------|-------------|
| `make setup` | 运行交互式安装向导 |
| `make setup-y` | 使用默认值运行安装(非交互式) |
| `make up` | 启动所有服务 |
| `make down` | 停止服务(保留数据) |
| `make down-all` | 停止服务并移除卷 |
| `make logs` | 查看服务日志 |
| `make restart` | 重启所有服务 |
| `make ps` | 显示正在运行的服务 |
| `make status` | 显示详细服务状态 |
| `make clean` | 移除容器(保留数据) |
| `make clean-all` | 完全清理(容器 + 卷 + 镜像) |
## 文档
| 文档 | 描述 |
|----------|-------------|
| [完整安装指南](build/SETUP_COMPLETE_GUIDE.md) | 全面的新手指南 |
| [安装参考](build/SETUP.md) | 快速参考安装指南 |
| [交互式安装](INTERACTIVE_SETUP_README.md) | 安装向导文档 |
| [环境变量](docs/ENVIRONMENT_VARIABLES.md) | 配置参考 |
## 安全
请参阅 [SECURITY.md](SECURITY.md) 报告漏洞。
## 贡献
我们欢迎贡献!详情请参阅我们的贡献指南。
## 生态系统
SereniBase 是一个完整后端平台的核心。所有模块都是开源的,可以独立使用或组合使用:
| 模块 | 用途 | 许可证 |
|--------|---------|---------|
| [sereni-jwt-provider](https://github.com/aptlogica/sereni-jwt-provider) | JWT 身份验证微服务 | Apache 2.0 |
| [sereni-storage-provider](https://github.com/aptlogica/sereni-storage-provider) | S3/MinIO/本地存储 | Apache 2.0 |
| [sereni-email-smtp](https://github.com/aptlogica/sereni-email-smtp) | SMTP 邮件 + Redis 队列 | Apache 2.0 |
| [sereni-antivirus-clamav](https://github.com/aptlogica/sereni-antivirus-clamav) | ClamAV 文件扫描 | Apache 2.0 |
| [go-postgres-rest](https://github.com/aptlogica/go-postgres-rest) | PostgreSQL REST API 库 | Apache 2.0 |
| [base-sdk](https://github.com/aptlogica/base-sdk) | TypeScript SDK | Apache 2.0 |
| [base-ui](https://github.com/aptlogica/base-ui) | React 前端 | MIT |
## 许可证
依据 Apache License, Version 2.0 许可。版权所有 2026-2030 Aptlogica Technologies Pvt Ltd。