Dify 本地源码安装教程
目录
- 1. 克隆代码
- 2. 启动中间件服务
- 3. 配置并启动后端服务
- 4. 配置并启动前端服务
- 5. 访问服务
1. 克隆代码
git clone https://github.com/langgenius/dify.git
2. 启动中间件服务
首先需要启动必要的中间件服务(PostgreSQL、Redis等):
- 进入 docker 目录:
cd dify/docker
- 复制环境配置文件:
copy middleware.env.example middleware.env
- 启动中间件服务:
docker compose -f docker-compose.middleware.yaml up -d
3. 配置并启动后端服务
- 进入 api 目录:
cd api
- 复制环境配置文件:
copy .env.example .env
-
生成密钥:
这个网址可以随机生成密钥:https://www.lddgo.net/string/randompassword
替换.env 文件中的密钥SECRET_KEY:
-
安装依赖:
uv sync
- 执行数据库迁移:
uv run flask db upgrade
- 启动API服务(Windows系统):
uv run flask run --host 0.0.0.0 --port=5001 --debug
- 启动Worker服务(Windows系统):
在另一个窗口开启Worker服务:
uv run celery -A app.celery worker -P solo --without-gossip --without-mingle -Q dataset,generation,mail
4. 配置并启动前端服务
-
确保已安装Node.js v18.x以上版本和PNPM
-
进入web目录:
cd web
- 复制环境配置文件:
copy .env.example .env.local
- 安装依赖:
pnpm install --frozen-lockfile
- 构建前端:
命令行窗口用管理员权限开启,然后运行下面命令:
pnpm build
- 启动前端服务:
因为windows系统的特殊性,在package.json文件下修改start脚本
"start": "xcopy \".next\\static\" \".next\\standalone\\.next\\static\" /E /I /Y && xcopy \"public\" \".next\\standalone\\public\" /E /I /Y && cross-env PORT=3000 HOSTNAME=localhost node .next/standalone/server.js",
然后启动命令
pnpm start
5. 访问服务
完成以上步骤后,可以通过浏览器访问:
http://localhost:3000
至此,Dify的本地开发环境就搭建完成了。前端运行在3000端口,后端API运行在5001端口。
注意事项:
- 确保Docker已经正确安装并运行
- Windows系统下需要使用管理员权限运行命令提示符
- 如果遇到权限相关问题,可以尝试以管理员身份运行命令
- 确保所需端口(3000、5001等)未被其他程序占用
参考链接:https://docs.dify.ai/en/getting-started/install-self-hosted/local-source-code