Dify 本地部署指南

一、前置条件

Clone Dify 代码:

复制代码
git clone https://github.com/langgenius/dify.git

在启用业务服务之前,我们需要先部署 PostgresSQL / Redis / Weaviate(如果本地没有的话),可以通过以下命令启动:

复制代码
cd docker
cp middleware.env.example middleware.env
docker compose -f docker-compose.middleware.yaml up -d

二、后端启动(源码启动)

1.进入后端目录api

复制代码
cd api

2.复制环境变量配置文件

复制代码
cp .env.example .env

3.生成随机密钥,并替换 .envSECRET_KEY 的值

复制代码
awk -v key="$(openssl rand -base64 42)" '/^SECRET_KEY=/ {sub(/=.*/, "=" key)} 1' .env > temp_env && mv temp_env .env

4.安装依赖包

Dify API 服务使用 Poetry 来管理依赖。您可以执行 poetry shell 来激活环境。

复制代码
poetry env use 3.10
poetry install

5.执行数据库迁移,将数据库结构迁移至最新版本

复制代码
poetry shell
flask db upgrade

6.启动 API 服务

复制代码
flask run --host 0.0.0.0 --port=5001 --debug

三、后端启动(docker)

1、进入api目录运行docker构建脚本

复制代码
docker build -t dify-api . 

2、运行docker镜像

复制代码
docker run --name dify-api -p 5001:5001 -d dify-api

四、前端启动(源码启动)

1、进入web目录

2、运行npm install

3、运行npm run start

五、前端启动(docker启动)

1、与源码步骤一致

2、运行npm run build

3、运行docker构建命令

复制代码
docker build -t dify-web . 

4、运行docker镜像

复制代码
docker run --name dify-web -p 3000:3000 -d dify-web

以上流程完成后,Dify 的后端 API 将在 http://localhost:5001 提供服务,前端界面则在 http://localhost:3000 可访问。

总结

完成以上步骤后,Dify 的部署分为后端 API 服务和前端界面两部分:

  • 后端 API :在 http://localhost:5001 提供数据和业务逻辑支持。
  • 前端界面 :在 http://localhost:3000 提供用户交互界面。

可根据实际需求选择源码或 Docker 启动方式。通过本地启动的中间件服务(PostgresSQL、Redis 和 Weaviate)支持,确保系统的持久存储、缓存和向量数据库的完整功能。

相关推荐
bestcxx3 天前
0.2、AI Agent 开发中 ReAct 和 MAS 的概念
人工智能·python·dify·ai agent
wxl7812274 天前
Milvus部署在T4 GPU上,Dify检索性能可以提升多少?
知识库·dify·rag·milvus gpu
不语n12 天前
Windows+Docker+AI开发板打造智能终端助手
python·docker·树莓派·香橙派·dify·ollama·ai开发板
阿福Chris12 天前
Dify本地初始化后安装模型供应商瞬间失败控制台报错401
大模型·llm·dify·大模型工具
wwwzhouhui13 天前
86-dify案例分享-Qwen3-VL+Dify:从作业 OCR 到视频字幕,多模态识别工作流一步教,附体验链接
ocr·dify·qwen3-vl
是店小二呀23 天前
整合亮数据Bright Data与Dify构建自动化分析系统
大数据·自动化·dify·mcp·bright data
肖祥1 个月前
VoxCPM:新一代高拟真语音生成模型
dify
霍格沃兹软件测试开发1 个月前
快速掌握Dify+Chrome MCP:打造网页操控AI助手
人工智能·chrome·dify·mcp
剑客的茶馆1 个月前
新服务器从0开始搭配Ubuntu+Conda+Docker+Dify
服务器·ubuntu·docker·conda·dify