Windows下调试Dify相关组件(2)--后端Api

ops/2025/1/12 12:56:24/
1.部署依赖的服务(代码最外层的docker目录)

1.1 将middleware.env.example复制,并改名为middleware.env。

1.2 查看docker-compose.middleware.yaml,有5个服务

      db:postgres数据库。

      redis:redis缓存。

      sandbox:沙盒,组件运行环境。

      ssrf_proxy: 防服务端请求伪造(SSRF,server-side request forgery)攻击代理。

      weaviate:向量数据库,没用到知识库可以暂时删掉。

1.3 启动 Docker Desktop

1.4 cmd命令行切到docker目录,运行命令

docker-compose -f docker-compose.middleware.yaml up -d

   正常完成后 docker ps命令可以查看运行的容器:

2. 安装poetry

2.1 要求python版本须是3.11或3.12,建议3.12。已安装python 3.12.2,系统识别python命令。

2.2 Powershell 执行

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

 或cmd命令行 (如系统配置的是python3命令,请将后面的python改为python3):

curl -sSL https://install.python-poetry.org | python -

 参考官网:Introduction | Documentation | Poetry - Python dependency management and packaging made easy (python-poetry.org)

2.3 安装完成后,将安装路径加入到系统环境变量Path中,查看版本,目前是2.0.0:

poetry --version
3. Api服务(代码最外层的api目录)

1.1 将.env.example复制,并改名为.env。

1.2 随便设置.env文件里的SECRET_KEY,也可以在Linux下运行下面命令去生成key:

openssl rand -base64 42

1.3 PyCharm 打开api目录,设置Poetry虚拟环境的解释器

终端运行命令 poetry env info 可以查看python环境情况。

1.4 安装依赖包

poetry install

如果提示 pyproject.toml changed significantly since poetry.lock was last generated. Run `poetry lock` to fix the lock file. 则先运行下面命令:

poetry lock

1.5 同步数据库表

poetry run python -m flask db upgrade

1.6 配置启动如图所示,然后可以调试了

1.7 遇到的问题

一开始用的Python3.11+PyCharm社区2023,调试的时候出现下面警告

sys.settrace() should not be used when the debugger is being used. This may cause the debugger to stop working correctly.

然后能到达断点,但调试不了,原因不明。

后改用Python3.12+PyCharm社区2024就好了。

1.8 结束


http://www.ppmy.cn/ops/149451.html

相关文章

[ComfyUI]接入Google的Whisk,巨物融合玩法介绍

一、介紹​ 前段时间,谷歌推出了一个图像生成工具whisk,有一个很好玩的图片融合玩法,分别提供三张图片,就可以任何组合来生成图片。​ ​ 最近我发现有人开发了对应的ComfyUI插件,对whisk做了支持,就来体验了下&#…

2024年12月中国电子学会青少年软件编程(Python)等级考试试卷(二级)答案 + 解析

2024.12 中国电子学会青少年软件编程(Python)等级考试试卷(二级)答案 解析 一、单选题(共25题,共50分) 1. 已知字典如下 dic1 { name: Ming, age:20, grade: A, Tel:6666666 } 以下哪个代码运行结果为20&#xff…

多个表单使用相同的 ref 和 rules,表单验证规则不生效

在 Vue 和 Element UI 中,如果多个表单使用相同的 ref 和 rules,可能会导致表单验证规则不生效。这是因为 ref 是唯一的,多个表单共享同一个 ref 会导致冲突。 解决方法: 1. 为每个表单设置不同的 ref 为每个表单设置不同的 re…

VTK知识学习(29)-交互问题

1、窗体类型 1)、RenderWindowControl UserControl derived implementation of vtkRenderWindow for use in Windows Forms applications. The client area of this UserControl is completely filled with an instance of a vtkRenderWindow. 用于Windows窗体应…

本地系统A与云平台B数据对接demo演示

.一、云平台B提供工程类库【.net工程类库,直接调用】 本地系统A-本地电脑调用,电脑连接互联网 云平台B-互联网云平台-提供cs文件,接口文档。 1.c#类库 2.控制台或winform直接调用c#类库; 3.云平台B输出【c#源文件】 4.cs文件端…

【数据链电台】洛克希德·马丁(Lockheed Martin)

洛克希德马丁公司(Lockheed Martin)是全球领先的航空航天、国防、先进技术和安全领域的供应商之一。 公司为美军及盟国军队提供了广泛的通信系统,包括数据链电台和相关的通信系统。 洛克希德马丁的许多产品用于战术通信、卫星通信、电子战、…

Hadoop 实战笔记(一) -- Windows 安装 Hadoop 3.x

环境准备 安装 JAVA 1.8 Java环境搭建之JDK下载及安装下载 Hadoop 3.3.5 安装包 Hadoop 下载:https://archive.apache.org/dist/hadoop/common/ 一、JAVA JDK 环境检查 二、Hadoop(HDFS)环境搭建 1. 解压安装文件 hadoop-3.3.5.tar 2. 配置环境变量 HADOOP_HO…

【数据分析(一)】初探 Numpy

目录 前言1. 一维 array 的生成2. 一维 array 的基本操作2.1. 查看属性2.2. 花式索引2.3. 条件筛查2.4. 数据统计 3. n 维 array 的生成4. n 维 array 的基本操作4.1. 查看属性4.2. 查询和切片4.3. 花式索引4.4. 矩阵 前言 Numpy是Python的常用开源数值计算扩展库,用…