文章

DIFY迁移指南(new)

Loading collection...

一、db数据备份

第一阶段:在【旧环境】导出绝对纯净的数据

请回到你的旧环境(C:\dify-main\docker),打开 PowerShell:
  1. 取消伪终端,在容器内部直接生成文件: 不要用 > 导到外部了!直接让 PostgreSQL 在它自己的 Linux 肚子里生成文件:PowerShell
    1. docker exec docker-db-postgres-1 sh -c "pg_dump -U postgres -F p -E UTF8 dify > /tmp/absolute_pure_backup.sql"
      (注意这里去掉了 -t,并且把 > 放到了双引号里面。)
  1. 把纯净文件从旧容器里“捞”出来: 此时文件已经安全生成在容器内部。现在把它拷贝到你的 Windows 电脑上:PowerShell
    1. docker cp docker-db-postgres-1:/tmp/absolute_pure_backup.sql C:\dify-main\docker\absolute_pure_backup.sql

二、db数据还原

第二阶段:在【新环境】导入

拿到这个绝对没被 PowerShell 污染过的 absolute_pure_backup.sql 后,把它复制到你的新环境(E:\dify-main-new\docker) 目录下。
  1. 运行拉库:PowerShell
    1. docker compose up -d
      (等 10 秒)
  1. 清理新环境(老规矩):PowerShell
    1. docker compose down -v docker compose up -d db_postgres
      (等 10 秒)
  1. 把文件“空投”进新容器:PowerShell
    1. docker cp absolute_pure_backup.sql docker-db_postgres-1:/tmp/absolute_pure_backup.sql
  1. 在容器内部执行导入:PowerShell
    1. docker exec -i docker-db_postgres-1 psql -U postgres -d dify -f /tmp/absolute_pure_backup.sql
  1. 拉起所有服务:PowerShell
    1. docker compose up -d

二、向量知识库数据还原

Dify 的所有心血(你的对话记录、配置好的 Prompt、上传的知识库文档、以及向量化后的数据)都默认保存在 dify/docker/volumes 这个文件夹里。 在down的条件下复制替换进去再运行up
Comments load when you scroll here.

© Ely 2021 - 2026