---
title: 将社区版升级至 v1.0.0+
---


> 本文主要介绍如何将旧社区版本升级为 [v1.0.0](https://github.com/langgenius/dify/releases/tag/1.0.0)。如果你未曾安装过 Dify 社区版，可以直接克隆 [Dify 项目](https://github.com/langgenius/dify)，并切换至 `1.0.0` 分支。参考[文档](https://docs.dify.ai/zh-hans/getting-started/install-self-hosted/docker-compose)执行安装命令。

如需在社区版中体验插件功能，需要将版本号升级为 `v1.0.0`。本文将为你介绍如何从旧版本升级至 `v1.0.0` 以体验插件生态功能。

## 开始升级

升级分为以下步骤：

1. 备份数据
2. 插件迁移
3. 主项目升级

### 1. 备份数据

1.1 运行 `cd` 命令至你的 Dify 项目路径，新建备份分支。

1.2 运行以下命令，备份你的 docker-compose YAML 文件（可选）。

```bash
cd docker
cp docker-compose.yaml docker-compose.yaml.$(date +%s).bak
```

1.3 运行命令停止服务，在 Docker 目录中执行备份数据命令。

```bash
docker compose down
tar -cvf volumes-$(date +%s).tgz volumes
```

### 2. 升级版本

`v1.0.0` 支持通过 Docker Compose 部署。运行 `cd` 命令至你的 Dify 项目路径，运行以下命令升级 Dify 版本：

```bash
git fetch origin
git checkout 1.0.0 # 切换至 1.0.0 分支
cd docker
nano .env # 修改环境配置文件同步 .env.example 文件
docker compose -f docker-compose.yaml up -d
```

### 3. 工具迁移为插件

> **重要提示：关于命令执行和包管理**
> *   **默认容器名称：** `docker exec` 命令示例使用了 `docker-api-1`。如果您的 API 容器有不同的名称或 ID（您可以使用 `docker ps` 查找），请相应调整命令。
> *   **Python 包管理器 (`uv` 与 `poetry`)：**
    *   从版本 [v1.3.0](https://github.com/langgenius/dify/releases/tag/1.3.0) 开始，Dify 已将 Python 包管理器从 `poetry` 切换到 `uv` 以提升性能。对于 Dify v1.3.0 或更新版本中的常规操作，标准命令是 `uv run flask ...`。
    *   **本指南专注于升级到 Dify v1.0.0。** 在 Dify v1.0.0 到 v1.3.0 (不含v1.3.0) 期间，`poetry` 是其包管理器。因此，下方示例中的 `flask` 命令正确地使用了 `poetry run ...`。代码示例首先在注释中强调了当前 `uv` 的标准用法，然后显示了与本指南特定的 v1.0.0 迁移范围相关的 `poetry` 命令。

该步骤的目的：将此前社区版本所使用的工具及模型供应商，自动进行数据迁移并安装至新版本的插件环境中。

1. 运行 `docker ps` 命令，查看 API 容器的名称或 ID。默认名称通常是 `docker-api-1`。

示例：

```bash
docker ps
CONTAINER ID   IMAGE                                       COMMAND                  CREATED       STATUS                 PORTS                                                                                                                             NAMES
417241cd****   nginx:latest                                "sh -c 'cp /docker-e…"   3 hours ago   Up 3 hours             0.0.0.0:80->80/tcp, :::80->80/tcp, 0.0.0.0:443->443/tcp, :::443->443/tcp                                                          docker-nginx-1
f84aa773****   langgenius/dify-api:1.0.0                   "/bin/bash /entrypoi…"   3 hours ago   Up 3 hours             5001/tcp                                                                                                                          docker-worker-1
a3cb19c2****   langgenius/dify-api:1.0.0                   "/bin/bash /entrypoi…"   3 hours ago   Up 3 hours             5001/tcp                                                                                                                          docker-api-1
```

运行命令 `docker exec -it docker-api-1 bash` 进入容器终端（如果您的容器名称不同，请使用对应的名称），在容器内运行：

```bash
# 对于 Dify v1.3.0+ 的环境，标准命令是 'uv run ...'。
uv run flask extract-plugins --workers=20
#
# 如果您的目标迁移版本是 Dify v1.0.0 至 v1.3.0 (不含v1.3.0) 之间，请使用 'poetry':
# poetry run flask extract-plugins --workers=20
```

> 如果在按照本指南为 v1.0.0 版本迁移执行命令时发生错误（例如，找不到 `uv` 或 `poetry`），请确保按照该版本最初的先决条件，在服务器上正确设置了 `poetry` 环境。如果在运行 `poetry` 命令后终端提示输入，请按 **"回车"** 跳过。

此命令将提取当前环境中使用的所有模型和工具。workers 参数将决定提取过程中的所使用的并行进程数，可根据需要进行调整。命令运行完成后将生成 `plugins.jsonl` 文件保存结果，该文件包含了当前 Dify 实例中所有工作区的插件信息。

确保你的网络正常访问公网，并支持访问：`https://marketplace.dify.ai`。在 `docker-api-1` 容器内继续运行以下命令：

```bash
# 对于 Dify v1.3.0+ 的环境，标准命令是 'uv run ...'。
uv run flask install-plugins --workers=2
#
# 如果您的目标迁移版本是 Dify v1.0.0 至 v1.3.0 (不含v1.3.0) 之间，请使用 'poetry':
# poetry run flask install-plugins --workers=2
```

此命令将下载并安装所有必要的插件到最新的社区版本中。

最后迁移插件数据。运行以下命令更新 `provider name`，并在其后附加 `langgenius/{provider_name}/{provider_name}`。

```bash
# 对于 Dify v1.3.0+ 的环境，标准命令是 'uv run ...'。
uv run flask migrate-data-for-plugin
#
# 如果您的目标迁移版本是 Dify v1.0.0 至 v1.3.0 (不含v1.3.0) 之间，请使用 'poetry':
# poetry run flask migrate-data-for-plugin
``` 

当终端出现以下标识时，迁移完成。

```bash
Migrate [tool_builtin_providers] data for plugin completed, total: 6
Migrate data for plugin completed.
```

## 验证结果

访问 Dify 平台，轻点右上角 **"插件"** 查看此前所使用的工具是否被正确安装。随机使用某个插件，验证是否能够正常运行。如果无误，说明你已完成版本升级和数据迁移。

![](https://assets-docs.dify.ai/2025/02/6467b3578d3d3e96510f50a09442d5a5.png)

{/*
Contributing Section
DO NOT edit this section!
It will be automatically generated by the script.
*/}

---

[编辑此页面](https://github.com/langgenius/dify-docs/edit/main/zh-hans/development/migration/migrate-to-v1.mdx) | [提交问题](https://github.com/langgenius/dify-docs/issues/new?template=docs.yml)

