服务

从 Docker Compose 导入

将 Docker Compose 中数据库和缓存的数据复制到 Joppa 的服务中,然后切换项目,始终不修改源数据。

你的项目在它自己的 docker-compose.yml 中运行 PostgreSQL 或 Redis?Joppa 可以把它们的数据复制到自己的服务中,然后让项目指向这些服务。源数据永远不会被修改。

在哪里找到

  • 添加项目时:窗口会为找到的每个数据库或缓存提供 导入 Joppa。数据会在添加项目后复制。
  • 之后:在项目的 域名 标签页中,Docker Compose 数据 部分。

可以导入什么

源(Compose) 目标(Joppa) 方式
PostgreSQL PostgreSQL pg_dump 后恢复
MySQL、MariaDB MySQL 或 MariaDB mysqldump 后恢复
Redis、Valkey Redis 或 Valkey 复制键(DUMP / RESTORE)

Joppa 会读取 compose.yaml、compose.yml、docker-compose.yml 或 .yaml、override 文件以及 COMPOSE_FILE,并用 .env 和 env_file 中的值替换 ${VAR:-default}。它能找出镜像的版本,即使镜像是从 Dockerfile(FROM)构建的。

导入计划

在复制任何内容之前,Joppa 会显示源、目标,以及:

  • 要导入的数据库 和 Joppa 中的名称;
  • 大小(或键的数量);
  • 两边的 版本;
  • 源数据库使用的 扩展:Joppa 中可用、需在 Joppa 服务器上启用 或 Joppa 未提供。

对于缓存,选项 替换 Joppa 中已有的键 用于在合并与覆盖之间选择。

Joppa 替你处理的事

情况 提议
源已停止 经你同意后启动它(docker compose up)
Joppa 中还没有该服务 创建 PostgreSQL 17,版本与源相同
Joppa 中的服务已停止 启动它
源的端口未发布(缓存) 需要添加到 Compose 中的代码片段
需在服务器上启用扩展 将它们加入镜像并重启服务
已存在同名数据库 以其他名称导入 或 替换

导入按可见的步骤进行:导出、创建数据库、恢复(或 读取键、复制键)。

将项目切换到 Joppa

数据复制完成后,将项目切换到 Joppa 提供以下可选操作:

  • 停止 Compose 服务并释放端口:其数据仍保留在 Docker 中;
  • 将项目的 .env 指向 Joppa:原文件保存在 .env.joppa-backup。

稍后 会让 Compose 和 .env 保持原样。

getjoppa.com › support

加载中

发送不了?请写信至 [email protected]。只是简单的问题:[email protected]。