当前位置: 首页 > article >正文

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)支持,确保系统的持久存储、缓存和向量数据库的完整功能。


http://www.kler.cn/a/385899.html

相关文章:

  • 自存 关于RestController请求传参数 前端和后端相关
  • 查询DBA_FREE_SPACE缓慢问题
  • Ubuntu从入门到精通(一)系统安装
  • 【从零开始的LeetCode-算法】3270. 求出数字答案
  • CSS回顾-基础知识详解
  • 密码学在网络安全中的应用
  • 解决方案 | 部署更快,自动化程度高!TOSUN同星线控底盘解决方案
  • spring boot 项目配置https服务
  • Terraform-阿里云- ECS实验
  • 微服务设计模式 - 事件溯源模式(Event Sourcing Pattern)
  • [Redis] Redis哨兵机制
  • python安装selenium,geckodriver,chromedriver,Selenium IDE
  • 学习笔记:黑马程序员JavaWeb开发教程(2024.11.8)
  • flink 内存配置(一):设置Flink进程内存
  • 设计模式小结一观察者(Observer)模式
  • 如何在微服务架构中优化微信 Access Token 管理:解决频率限制与过期问题的最佳实践
  • 哈夫曼树(HuffmanTree)
  • c++:模板和STL
  • 自动驾驶---“火热的”时空联合规划
  • Unity3D 包体裁剪与优化详解
  • Qt编译lua库并调用
  • Qt | http获取网页文件(小项目)
  • python爬虫自动库DrissionPage保存网页快照mhtml/pdf/全局截图/打印机另存pdf
  • leetcode20.括号匹配
  • 以梧桐数据库为例讲解如何计算用户连续登录比率
  • 站长用站群安全特性怎么样