SuperAPI AI 工具集

PocketBase Deploy

部署与运维

查看项目

更新于 10-15 20:34

技能介绍

用途:指导将 PocketBase 部署到生产服务器,包括单二进制运行、进程守护、容器化、反向代理与 TLS、邮件与对象存储配置,以及安全加固和备份。

主要能力与用法:

  1. 单二进制部署:下载对应架构压缩包,解压后执行 chmod +x pocketbase,用 ./pocketbase serve --http="0.0.0.0:8090" 启动;数据放在 pb_data/(SQLite、上传文件、日志)。
  2. systemd:创建 /etc/systemd/system/pocketbase.service,设置 User/Group、WorkingDirectory、ExecStart,并启用 NoNewPrivileges、ProtectSystem=strict、ProtectHome、ReadWritePaths、PrivateTmp 等加固项;高流量可调 LimitNOFILE(如 65535)和 GOMEMLIMIT。用 systemctl daemon-reload、enable、start、status 管理服务,journalctl -u pocketbase -f 查看日志。
  3. Docker:提供 Dockerfile 与 docker-compose.yml 示例,PB_VERSION 构建参数,端口绑定 127.0.0.1:8090,挂载 pb_data、pb_hooks、pb_migrations 卷,含健康检查 /api/health。
  4. 反向代理:Caddy 只需 myapp.com 配置 reverse_proxy localhost:8090 自动签发 TLS;nginx 需配置 SSL 证书、client_max_body_size,并针对实时 SSE 设置 proxy_buffering off、proxy_read_timeout 3600s,可用 certbot 获取 Let's Encrypt 证书。
  5. 其他配置:SMTP 可在仪表盘或 pb_hooks 的 onBootstrap 中启用;启用加密密钥 --encryptionEnv;限流设置 settings.rateLimits;文件存储可接 S3 兼容服务;备份小于 1GB 用仪表盘或 API,大库用 sqlite3 .backup 配合 rsync,附备份脚本与 cron 示例。

适用场景:需要把 PocketBase 上线到 VPS 或容器环境,并做 TLS、邮件、存储、限流、备份与安全加固的部署任务。

限制:具体版本号、服务器参数需按实际调整;加密密钥丢失将无法解密设置;直接复制正在运行的 .db 文件可能导致数据不一致。