Dify v0.6.14源码部署

news/2024/8/26 14:23:00 标签: dify, docker, poetry

一.前置条件

poetry_2">1.安装和配置poetry

通过Windows PowerShell安装poetry

 (Invoke-WebRequest -Uri https://install.python-poetry.org -UseBasicParsing).Content | python -

关于poetry相关配置参考文献[1]。

dify_14">2.下载dify和启动中间件容器

克隆Dify v0.6.14代码:

git clone https://github.com/langgenius/dify.git
git checkout 0.6.14

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

cd docker
cp middleware.env.example middleware.env
docker compose -f docker-compose.middleware.yaml -p "dify0614" up -d

PyCharm界面如下所示:

Docker Desktop界面如下所示:

Portainer界面如下所示:

二.服务端部署

1.进入api目录

cd api

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

cp .env.example .env

3.生成随机密明,并替换.env中 SECRET_KEY的值

sed -i "/^SECRET_KEY=/c\SECRET_KEY=$(openssl rand -base64 42)" .env

4.安装依赖包

poetry install

5.执行数据库迁移

poetry shell
flask db upgrade

6.启动API服务

flask run --host 0.0.0.0 --port=5001 --debug

7.启动Worker服务

用于消费异步队列任务,如数据集文件导入、更新数据集文档等异步操作。 Linux / MacOS 启动:

celery -A app.celery worker -P gevent -c 1 -Q dataset,generation,mail,ops_trace,app_deletion --loglevel INFO

解释命令如下所示:

如果使用 Windows 系统启动,请替换为该命令:

celery -A app.celery worker -P solo --without-gossip --without-mingle -Q dataset,generation,mail,ops_trace,app_deletion --loglevel INFO

三.前端页面部署

1.进入web目录

cd web

2.安装依赖包

npm install

3.配置环墳变量

在当前目录下创建文件 .env.local,并复制.env.example中的内容。

4.构建代码

npm run build

5.启动 Web服务

npm run dev

访问 http://127.0.0.1:3000 即可使用本地部署的 Dify。设置管理员密码,根据邮箱和密码登录Dify平台,然后可看到探索、工作室、知识库、工具界面。

参考文献

[1] Poetry入门教程:https://z0yrmerhgi8.feishu.cn/wiki/KapBwuGITiQ2I6ktYpicZl01nyh

[2] What’s New in v0.6.14:https://github.com/langgenius/dify/releases

[3] Dify v0.6.9源码部署:https://z0yrmerhgi8.feishu.cn/wiki/RhZLwjuYxiK8ZikpUMVcICCwn1b


http://www.niftyadmin.cn/n/5558254.html

相关文章

<数据集>钢铁缺陷检测数据集<目标检测>

数据集格式:VOCYOLO格式 图片数量:6572张 标注数量(xml文件个数):6572 标注数量(txt文件个数):6572 标注类别数:4 标注类别名称:[class-1, class-3, class-4, class-2] 序号类别名称图片数框数1class…

自动化创建 AWS RDS 实例告警

在管理 AWS RDS 数据库实例时,设置适当的监控和告警是至关重要的。本文将介绍如何使用 Python 和 AWS SDK (boto3) 自动化创建 RDS 实例的 CloudWatch 告警。 背景 对于大规模的 RDS 部署,手动为每个实例创建告警既耗时又容易出错。通过自动化这个过程,我们可以确保所有符…

linux的学习(七):读取,函数,正则表达式,文本处理工具cut和awk

##简介 shell编程中的读取,函数,正则表达式,文本处理工具的简单使用 read read:读取控制台的输入 参数: -p:指定读取时的提示符-t:等待读取的时间 脚本例子 编写i.sh脚本,enter…

java包装类 及其缓存

Java 包装类(Wrapper Class)是将基本数据类型转换为对象的方式,每个基本数据类型在 java.lang 包中都有一个相应的包装类: Boolean 对应基本类型 boolean Character 对应基本类型 char Integer 对应基本类型 int Float 对应基本…

【HarmonyOS学习】定位相关知识(Locationkit)

简介 LocationKit提供了定位服务、地理围栏、地理编码、逆地理编码和国家码等功能。 可以实现点击获取用户位置信息、持续获取位置信息和区域进出监控等多项功能。 需要注意,需要确定用户已经开启定位信息,一下的代码没有做这一步的操作,默…

Laravel与Redis的共舞:释放高性能缓存的潜力

Laravel与Redis的共舞:释放高性能缓存的潜力 在现代Web应用开发中,性能优化始终是关键议题,而缓存则是提升性能的重要手段之一。Laravel框架集成了对Redis这一高性能键值存储系统的支持,使得数据缓存、会话管理和队列处理变得简单…

安装adb和常用命令

下载ADB安装包 https://dl.google.com/android/repository/platform-tools-latest-windows.zip 解压安装包 解压如上下载的安装包,然后复制adb.exe所在的文件地址 配置环境变量 我的电脑——>右键属性——>高级系统设置——>环境变量——>系统变量—…

搜维尔科技:Varjo XR-4开箱测评,里面都有啥?

Varjo XR-4开箱测评,里面都有啥? 搜维尔科技:Varjo XR-4开箱测评,里面都有啥?