# 鲁班API **Repository Path**: hoveronline/lubanapi ## Basic Information - **Project Name**: 鲁班API - **Description**: luban api 提供后台服务 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-07-10 - **Last Updated**: 2025-08-18 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # LuBan 后端 API ## 使用方法 > [!IMPORTANT] > 在 v0.6.12 版本中,我们弃用了 `pip` 作为 Dify API 后端服务的包管理工具,并替换为 `poetry`。 1. 启动 docker compose 堆栈 后端需要一些中间件,包括 PostgreSQL、Redis 和 Weaviate,可以使用 `docker compose` 一起启动。 ```bash cd ../docker cp middleware.env.example middleware.env # 如果您不使用 weaviate,请将配置文件更改为其他向量数据库 docker compose -f docker-compose.middleware.yaml --profile weaviate -p dify up -d cd ../api ``` 2. 将 `.env.example` 复制为 `.env` ```cli cp .env.example .env ``` 3. 在 `.env` 文件中生成 `SECRET_KEY`。 Linux 的 bash ```bash for Linux sed -i "/^SECRET_KEY=/c\SECRET_KEY=$(openssl rand -base64 42)" .env sed -i "s/10.0.50.89/192.168.161.144/g" .env ``` Mac 的 bash ```bash for Mac secret_key=$(openssl rand -base64 42) sed -i '' "/^SECRET_KEY=/c\\ SECRET_KEY=${secret_key}" .env ``` 4. 创建环境。 Dify API 服务使用 [Poetry](https://python-poetry.org/docs/) 来管理依赖项。您可以执行 `poetry shell` 来激活环境。 5. 安装依赖项 ```bash poetry env use 3.12 poetry install ``` 6. 运行迁移 在首次启动之前,将数据库迁移到最新版本。 ```bash poetry run python -m flask db upgrade poetry run python -m flask reset-encrypt-key-pair ``` 7. 启动后端 ```bash poetry run python -m flask run --host 0.0.0.0 --port=5001 --debug ``` 8. 启动 LuBan [web](../web) 服务。 9. 通过访问 `http://localhost:3000` 来设置您的应用程序... 10. 如果您需要处理和调试异步任务(例如数据集导入和文档索引),请启动工作服务。 ```bash poetry run python -m celery -A app.celery worker -P gevent -c 1 --loglevel INFO -Q dataset,generation,mail,ops_trace,app_deletion ``` ## 测试 1. 为后端和测试环境安装依赖项 ```bash poetry install -C api --with dev ``` 2. 使用 `pyproject.toml` 中 `tool.pytest_env` 部分的模拟系统环境变量在本地运行测试 ```bash poetry run -P api bash dev/pytest/pytest_all_tests.sh ```