本地启动Flower来监控Dify的Celery任务队列

本地启动Flower来监控Dify的Celery任务队列

说明:

启动Middleware服务

bash 复制代码
git clone https://github.com/langgenius/dify.git
cd dify
cd docker
cp middleware.env.example middleware.env
docker compose -f docker-compose.middleware.yaml --profile weaviate -p dify up -d

准备SECRET_KEY:

bash 复制代码
cd ../api
cp .env.example .env
# Generate a `SECRET_KEY` in the `.env` file.
sed -i "/^SECRET_KEY=/c\SECRET_KEY=$(openssl rand -base64 42)" .env

创建Python环境并安装依赖:

bash 复制代码
python3 -m venv venv
source venv/bin/activate
pip install poetry
poetry run which python
poetry shell
poetry install
poetry add flower

运行迁移命令使得数据库保持最新:

bash 复制代码
poetry run python -m flask db upgrade

注释掉api/app.py中的monkey.patch_all(),注释后头部代码如下:

python 复制代码
import os

if os.environ.get("DEBUG", "false").lower() != "true":
    from gevent import monkey

    # monkey.patch_all()

    import grpc.experimental.gevent

    grpc.experimental.gevent.init_gevent()

如果不关闭monkey patching,flower的页面将无法正常刷新出来,见我在flower库上提出的issue: https://github.com/mher/flower/issues/1390

启动Flask API服务:

bash 复制代码
poetry run python -m flask run --host 0.0.0.0 --port=5001 --debug

启动Web服务:

bash 复制代码
cd ../web
npm install
npm run dev

启动Celery任务队列:

bash 复制代码
# source venv/bin/activate
poetry run python -m celery -A app.celery worker -P gevent -c 1 --loglevel INFO -Q dataset,generation,mail,ops_trace,app_deletion

启动Flower:

bash 复制代码
# source venv/bin/activate
poetry run python -m celery -A app.celery flower --port=5555 --address='0.0.0.0' --debug --enable_events
相关推荐
gc_229940 分钟前
学习在Windows中基于Docker部署Dify的步骤
windows·docker·dify
Artech1 小时前
[MAF预定义的AIContextProvider-01]TextSearchProvider——RAG在MAF中的实现
ai·agent·rag·maf
染指111010 小时前
26.RAG进阶(Advanced RAG)-假设性问题索引
人工智能·windows·agent·rag·advanced rag
SXJR20 小时前
spring boot + langchain4j +milvus实现向量存储
java·spring boot·后端·大模型·milvus·rag·langchain4j
deephub21 小时前
Flash-KMeans:快速且内存高效的精确 K-Means,可在单张 GPU 进行亿级数据的聚类
人工智能·机器学习·kmeans·聚类·rag
四六的六1 天前
WebView里跑RAG——浏览器内知识检索增强实战
前端·实战·个人开发·webview·ai大模型·rag·webview内嵌开发
Attachment George1 天前
山东大学软件学院-项目实训-个人开发日志(十):材料问答链路开发——文档解析、OCR兜底与持续追问完善
python·ai·langchain·kotlin·rag
knight_9___1 天前
AI Agent 是什么?
人工智能·python·agent·rag·mcp
程序员三明治1 天前
【AI】从文本到向量:理解Embedding的作用
java·人工智能·后端·llm·元数据·rag·向量化
User_芊芊君子1 天前
蓝耘元生代×魔珐星云:我用蓝耘MaaS大模型搭建一款共情具身智能数字人
人工智能·dify·蓝耘