Deploy

自托管部署

自托管部署适合需要共享 Web 入口、内网访问控制、独立数据库凭据、AI Key 管理和应用数据持久化的团队。

适合场景

  • 需要在公司内网、私有云或自有服务器运行。
  • 需要自己管理数据库访问、AI Key、Secret 和成员权限。
  • 需要给团队提供统一的浏览器访问入口。
  • 需要连接内网数据库、云数据库、测试库或生产库。

推荐架构

层级决策
运行环境使用 Docker 容器运行 Dory。
应用数据选择 PGlite 持久化目录或 Postgres。
访问入口使用 HTTPS 反向代理或公司统一网关。
Secret使用 .env 或 Secret 管理系统,不写入镜像和 Git。
数据库网络确认 Dory 运行环境能访问目标数据库。
身份认证选择邮箱登录、邮箱验证或 OAuth 策略。

两类数据库

数据库角色存储内容配置位置
应用数据库Dory 用户、组织、连接、Saved Queries、设置和 MCP Token。环境变量配置
被连接数据库团队通过 Dory 查询的业务数据库或分析数据库。连接数据库

生产环境不要把应用数据留在临时容器文件系统中。PGlite 需要持久化 volume;Postgres 需要可备份的独立数据库。

上线前检查

项目要确认什么
域名准备用户实际访问的 URL,例如 https://dory.example.com
HTTPS团队部署必须使用 HTTPS。
Auth URLBETTER_AUTH_URL 与公开访问地址一致。
Secret生成并保存 DS_SECRET_KEYBETTER_AUTH_SECRET
应用数据库选择 PGlite 持久化目录或 Postgres。
AI明确 provider、model、API key、数据边界和轮换方式。
数据库账号生产连接优先使用只读账号。
成员管理明确谁能邀请、谁能管理连接、离职如何回收权限。
备份明确应用数据、.env 和数据库凭据的备份方式。

推荐上线顺序

  1. 确定访问域名、HTTPS 和网络边界。
  2. 选择应用数据库模式:PGlite 或 Postgres。
  3. 准备 .env 和 Secret。
  4. Docker 部署 启动测试环境。
  5. 登录初始化管理员账号。
  6. 配置认证策略。
  7. 连接测试数据库,验证 SQL Console、Explorer、AI 和 Saved Queries。
  8. 备份数据后再接入生产数据库。

运维边界

  • 生产数据库连接使用独立账号,避免共享管理员账号。
  • 云数据库需要放行 Dory 服务器出口 IP。
  • 内网数据库可通过 SSH Tunnel 或内网路由访问。
  • SQLite 和 DuckDB 文件需要挂载到容器内路径。
  • AI 功能会向配置的 AI Provider 发送必要上下文,团队上线前应确认数据边界。

相关文档

这篇文档有帮助吗?