惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

月光博客
月光博客
WordPress大学
WordPress大学
博客园 - 三生石上(FineUI控件)
H
Help Net Security
小众软件
小众软件
The Cloudflare Blog
人人都是产品经理
人人都是产品经理
Apple Machine Learning Research
Apple Machine Learning Research
S
SegmentFault 最新的问题
Last Week in AI
Last Week in AI
爱范儿
爱范儿
量子位
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
IT之家
IT之家
博客园 - 【当耐特】
V
Visual Studio Blog
大猫的无限游戏
大猫的无限游戏
博客园_首页
Jina AI
Jina AI
D
Docker
博客园 - 司徒正美
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
Microsoft Security Blog
Microsoft Security Blog
阮一峰的网络日志
阮一峰的网络日志

博客园 - Lafite-1820

linux 常用的命令 mac m1 使用vpn之后浏览器连不上网处理 - Lafite-1820 Opus 4.6 真的用不起了!我换成了国产 M2.5,实测真香!! 高并发IoT监控系统的Go实践:Goroutine池设计与并发安全指南 服务器设置成美国时间 Linux crond nginx 配置 mysql mac m1 报错处理 PostgreSQL 为什么不选择 B+ 树索引? 秒杀系统的架构(Golang 实现) nginx 配置 git 突然 403 Vue 项目接入Google第三方登录的详细流程 mysql 添加账号 [HY000][1366] Incorrect string value: '\xF0\x9F\x8C\x9F",...' ; - Lafite-1820 mac 外接硬盘系统软件 linux 常用命令 crontab 半小时执行一次 mac berw 安装deepseek linux mv 限时文件个数
5分钟搭建完整后端服务,这款开源的快速开发神器太牛了!
Lafite-1820 · 2026-02-11 · via 博客园 - Lafite-1820

来源:github.com/pocketbase/pocketbase

今天给大家介绍一款正在GitHub上爆火的开源项目——PocketBase。它是一个用Go语言编写的开源后端平台,却将数据库、用户认证、文件存储、实时API等复杂功能,全部浓缩进一个可执行文件中,五分钟就可以搭建一个完整的后端服务。

4e29151c6837406348e5daf2060a56e5

简介

PocketBase是一个由嵌入式数据库(SQLite)、实时订阅、内置身份验证管理、便捷的管理仪表板和简单 REST API 组成的开源后端。它本质上是一个极简的、可本地部署的 Backend-as-a-Service (BaaS) 解决方案,目标是让开发者,尤其是前端或全栈开发者,能够瞬间获得一个功能完备的后端,从而将精力完全聚焦于业务逻辑和用户体验。

核心功能

  • 内置数据库: 内置嵌入式 SQLite 数据库,数据以单一文件存储,无需独立数据库服务器。
  • 身份认证: 支持邮箱/密码、OAuth2(Google/Facebook/GitHub 等)用户认证,集成 JWT 令牌和密码重置流程。
  • 文件存储: 支持本地存储或 S3 云存储,提供访问控制策略。
  • 实时数据同步: 基于 WebSocket 和 SSE 实现实时订阅,客户端可监听特定记录或全集合变更(如新增、更新、删除)。
  • 内置管理界面: 内置 Admin UI,可视化管理数据集合、用户权限、文件及 API 日志,支持直接生成 API 文档。
  • 自动化 API: 基于已有的数据模型自动生成 RESTful API。
  • 前端框架集成: 提供 JavaScript 和 Dart SDK,可以轻松集成主流前端框架(Angular/React/Vue/Flutter/Svelte 等)。

快速使用

从官网或GitHub Releases页面下载对应平台的预编译可执行文件(一个单独的二进制文件)。

511acc46f4b0f76502a691632c926267

解压后,在终端中执行一条命令:

./pocketbase serve

服务启动后,首次运行会自动在浏览器中打开安装页面,引导你创建第一个超级管理员账户。至此,一个拥有数据库、API和管理后台的后端服务已经运行在本地(默认 http://127.0.0.1:8090 )。

12f741772fcc9e59ef35f4d48bca1ec7

如果你希望将其作为库集成,一个Go程序的最小示例同样简洁明了:

package main
import (
    "log"
    "github.com/pocketbase/pocketbase"
)
funcmain() {
    app := pocketbase.New()
    // 在此处添加自定义路由或钩子
    if err := app.Start(); err != nil {
        log.Fatal(err)
    }
}

界面预览

用户管理

91c69bb25b51cea32886fcf0c346e080

API配置与预览

a6aaf159a56bf5c4f6f85a9dda2ce26e

文件存储

8977a21c3e4e039c0fda3c2478e54b01

备份及恢复

77411bd2e3b94aeeb36fd8435f7ce772

开源地址

https://github.com/pocketbase/pocketbase