【苍狮技术团队】Dify使用源代码本地启动
本文详细介绍了Dify开源项目的本地部署流程,包括代码获取、基础软件安装、各服务启动等步骤。主要内容涵盖:1)从GitCode仓库Fork并克隆代码;2)使用Docker Compose启动中间件;3)配置并启动API、Worker和Beat服务;4)设置Web服务并完成构建;5)通过3000端口访问初始化页面。文章还提供了官方文档参考,并建议将部署过程中遇到的错误信息通过AI工具获取解决方案。整
·
代码获取
- 访问Dify国内仓库:https://gitcode.com/GitHub_Trending/di/dify
- 进行Fork操作

- 保存为自己的仓库

- clone自己的仓库

- clone在本地

基础软件安装
使用 Docker Compose 启动中间件
- 前提是安装好了docker 和 docker compose
cd docker
cp middleware.env.example middleware.env
# 如果不使用 postgresql,请将 profile 更改为 mysql
# 如果不使用 weaviate,请将 profile 更改为其他向量数据库
docker compose -f docker-compose.middleware.yaml --profile postgresql --profile weaviate -p dify up -d

- 可以看到启动的docker容器


启动 API 服务
- 在api目录执行,如:/Users/canglion/code/gitcode/dify/api

- 准备环境变量配置文件:
cp .env.example .env - 生成随机密钥并替换 .env 文件中的 SECRET_KEY 值:
awk -v key="$(openssl rand -base64 42)" '/^SECRET_KEY=/ {sub(/=.*/, "=" key)} 1' .env > temp_env && mv temp_env .env

4. 安装依赖:uv sync --dev
5. 执行数据迁移:uv run flask db upgrade
6. 启动api:uv run flask run --host 0.0.0.0 --port=5001 --debug
启动 Worker 服务
- 执行命令:
uv run celery -A app.celery worker -P gevent -c 1 --loglevel INFO -Q dataset,priority_dataset,priority_pipeline,pipeline,mail,ops_trace,app_deletion,plugin,workflow_storage,conversation,workflow,schedule_poller,schedule_executor,triggered_workflow_dispatcher,trigger_refresh_executor

启动 Beat 服务
- 执行命令:
uv run celery -A app.celery beat
设置 Web 服务
- 在trae编辑器中打开web目录

- 安装对应依赖

- 准备环境变量配置文件在当前目录中创建一个名为 .env.local 的文件,并从 .env.example 复制内容

- 构建服务:
pnpm build
- 启动服务:
pnpm start
访问 Web 服务
- 访问本地的3000端口,进行管理员初始化操作

- 访问首页信息

总结
参考文档
遇到的问题
- 在安装某些命令时肯定会出现报错,建议直接把报错信息丢给qianwen,直接输出解决方法
https://www.qianwen.com/

更多推荐
所有评论(0)