内容
# 检查点 Agentic MCP 游乐场
<p align="left">
<img src="https://img.shields.io/badge/License-MIT-blue.svg" />
<img src="https://img.shields.io/badge/Docker-Compose-blue?logo=docker" />
<img src="https://img.shields.io/badge/n8n-Automation-orange?logo=n8n" />
<img src="https://img.shields.io/badge/langflow-Workflow-green?logo=langflow" />
<img src="https://img.shields.io/badge/Ollama-LLM-grey" />
<img src="https://img.shields.io/badge/Check%20Point-MCP-magenta?" />
<img src="https://img.shields.io/badge/Status-Production%20Ready-success" />
</p>
> **一个用于 Agentic AI 和 Check Point MCP 服务器的生产就绪本地游乐场**
>
> 使用以下命令启动 n8n + NetBox + Batfish + Ollama + Flow UIs + Qdrant + 一整套 Check Point MCP 服务器:
>
> ```bash
> docker compose --profile cpu up -d
> ```
---
## 快速概览
一个**生产就绪、多服务 Docker Compose 栈**,它提供了一个完整的本地 AI + Check Point MCP(模型上下文协议)环境:
- **n8n** – 工作流自动化 + MCP 工具编排器
- **PostgreSQL** – n8n 后端数据库
- **自动配置器** – 创建 n8n 实例所有者 **和** 安装 `n8n-nodes-mcp`
- **Ollama** – 本地大型语言模型(LLM);CPU **或** NVIDIA GPU;自动模型拉取
- **Open WebUI** – Ollama/LLM 聊天界面
- **Langflow** – 视觉 AI 流构建器
- **Flowise** – LLM 编排 UI
- **Qdrant** – 嵌入式向量数据库
- **NetBox** – 数据中心基础设施管理/IP 地址管理平台(带有专用 Postgres + Redis)
- **Batfish** – 网络分析引擎,带有 MCP 桥接器和 CLI 实用程序容器
- **OpenClaw 网关** – 本地优先网关,配置为 `ollama-cpu`
- **OpenClaw MCP 服务器** – OpenClaw 会话的流式 HTTP 桥接器
- **n8n 管理 MCP 服务器** – 用于 n8n API 管理的标准输入/输出 MCP 服务器
- **Check Point MCP 服务器** – 专用 HTTP 边车在 Docker 网络上
目标是用于构建、测试和演示 AI + Check Point 工作流的**单个实验室栈**:
- 实例所有者**自动配置**
- `n8n-nodes-mcp` **预安装**
- MCP 服务器作为**HTTP 工具**从 n8n 内部可访问
---
## 导航
- [📦 快速开始](#-快速开始)
- [🔧 技术栈和布局](#-技术栈和布局)
- [⚙️ 环境 -- 环境变量](#%EF%B8%8F-环境-env)
- [🏗️ 构建和配置文件](#%EF%B8%8F-构建和配置文件)
- [🎯 n8n 配置和自动导入](#-n8n-配置和自动导入)
- [🧰 NetBox + n8n 示例](#-netbox--n8n-示例)
- [🛰️ Batfish 服务](#%EF%B8%8F-batfish-服务)
- [🌐 URL 和 MCP 端点](#-urls--mcp-端点)
- [🤖 Ollama 模型](#-ollama-模型)
- [💾 数据和持久性](#-数据和持久性)
- [📚 指南](#-指南)
- [🚀 生产部署](docs/operations/PRODUCTION_DEPLOYMENT.md)
- [💿 备份和恢复](docs/operations/BACKUP_RECOVERY.md)
- [🔍 故障排除](#-故障排除)
- [🔄 更新和重置](#%EF%B8%8F-更新和重置)
---
## 快速开始
<details>
<summary><strong>1. 要求</strong></summary>
- **Docker 引擎** + **Docker Compose v2**
- `.env` 中的空闲端口(例如 `5678`, `5432`, `8000`, `9997`, `9996`, `7320`, `3000`, `3001`, `7860`, `6333`, `11434`, `73xx`, …)
- 容器具有出站互联网访问权限(用于:
- 拉取镜像
- 安装社区节点
- 拉取 Ollama 模型)
- 所有命令都在包含 `docker-compose.yml` 和 `.env` 的文件夹中执行
**可选 – GPU 配置文件**
- 主机上的 NVIDIA GPU
- 已安装 **NVIDIA 容器工具包**
- 主机上的 `nvidia-smi` 可用
</details>
<details>
<summary><strong>2. 最小有效路径</strong></summary>
1. 克隆此栈使用的外部 MCP/网关仓库:
```bash
mkdir -p mcp-servers-source
cd mcp-servers-source
git clone https://github.com/openclaw/openclaw.git
git clone https://github.com/rodgco/openclaw-mcp-server.git
git clone https://github.com/illuminaresolutions/n8n-mcp-server.git
cd ..
```
2. 运行设置脚本以生成一个安全的 `.env` 文件:
```bash
./setup.sh
```
(或者,如果您更喜欢手动创建 `.env` 文件,请参见 [环境](#%EF%B8%8F-环境-env))。
3. 构建自定义 n8n 镜像:
```bash
docker compose build n8n
```
4. 启动 CPU 栈:
```bash
docker compose --profile cpu up -d
```
5. 等待 30–60 秒,让:
- Postgres
- NetBox(及其 Postgres/Redis 依赖项)
- Batfish + Batfish MCP 桥接器 + Batfish CLI
- n8n
- 配置器(所有者 + `n8n-nodes-mcp`)
- 可选的 `n8n-import`(工作流/凭证)
6. 浏览到您的 UI:
- <http://localhost:5678>
- <http://localhost:8000>
- <http://localhost:9997>
- 使用 `.env` 文件中的所有者凭证登录
</details>
<details>
<summary><strong>3. GPU 配置文件</strong></summary>
如果您希望 Ollama 使用 GPU 而不是 CPU:
```bash
# 启动 GPU 配置文件
docker compose --profile gpu-nvidia up -d
# 或同时启动 CPU + GPU
docker compose --profile cpu --profile gpu-nvidia up -d
```
避免每次重复配置文件:
```bash
export COMPOSE_PROFILES=cpu
docker compose up -d
```
</details>
---
## 技术栈和布局
### 栈摘要
| 组件 | 目的 |
|----------------|----------------------------------------------|
| n8n | 自动化引擎 + MCP 编排器 |
| PostgreSQL | n8n 后端数据库 |
| n8n-provision | 所有者创建 + `n8n-nodes-mcp` 安装|
| n8n-import | 可选的工作流和凭证自动导入 |
| Ollama | 本地 LLM 服务器(CPU / GPU) |
| Open WebUI | Ollama / LLM 聊天界面 |
| Flowise | LLM 编排 / 低代码构建器 |
| Langflow | 视觉 AI 流构建器 |
| Qdrant | 向量数据库 |
| NetBox | 数据中心基础设施管理/IP 地址管理平台 |
| Batfish | 网络配置分析引擎 |
| Batfish MCP | Batfish API 桥接器,用于自动化 |
| Batfish CLI | pybatfish 实用程序容器 |
| OpenClaw | 代理网关(默认模型 `llama3.2:3b`) |
| OpenClaw MCP | HTTP MCP 桥接器进入 OpenClaw 会话 |
| n8n 管理 MCP | 用于 n8n API 操作的标准输入/输出 MCP 服务器 |
| MCP 边车 | Check Point MCP 工具作为 HTTP 服务器 |
### 仓库布局
```bash
.
├─ docker-compose.yml # 多服务栈(CPU / GPU 配置文件)
├─ .env # 密码 / 端口 / 管理值
├─ docker/
│ └─ n8n/
│ └─ Dockerfile # 自定义 n8n 镜像(MCP CLI + 包装器内置)
├─ scripts/
│ └─ n8n-provision.sh # 边车:所有者设置 + 登录 + 社区节点安装
├─ n8n/
│ ├─ backup/ # 要自动导入的工作流/凭证(可选)
│ └─ custom-nodes/ # 额外的 n8n 节点(持久化)
├─ langflow/
│ └─ flows/ # 示例 Langflow 流
├─ qdrant/ # Qdrant 的本地备份 / 集合
└─ mcp-servers-source/
├─ openclaw/ # OpenClaw 官方源仓库
├─ openclaw-mcp-server/ # OpenClaw MCP 服务器源(rodgco)
└─ n8n-mcp-server/ # n8n 管理 MCP 服务器源
```
---
## 环境(`.env`)
在 `docker-compose.yml` 旁边创建一个 `.env` 文件:
```env
# ───────── n8n 数据库 ─────────
POSTGRES_USER=admin
POSTGRES_PASSWORD=change_me
POSTGRES_DB=n8n
POSTGRES_PORT=5432
# ───────── NetBox ─────────
NETBOX_IMAGE=netboxcommunity/netbox:latest
NETBOX_PORT=8000
NETBOX_POSTGRES_DB=netbox
NETBOX_POSTGRES_USER=netbox
NETBOX_POSTGRES_PASSWORD=change_me
NETBOX_SECRET_KEY=long_random_netbox_secret
NETBOX_SUPERUSER_NAME=admin
NETBOX_SUPERUSER_EMAIL=admin@netbox.local
NETBOX_SUPERUSER_PASSWORD=change_me
NETBOX_BASE_URL=http://netbox:8080
NETBOX_API_TOKEN=
# ───────── Batfish ─────────
BATFISH_IMAGE=batfish/allinone:latest
BATFISH_PORT=9997
BATFISH_WORKER_PORT=9996
BATFISH_BASE_URL=http://batfish:9997
BATFISH_MCP_PORT=7320
BATFISH_MCP_URL=http://batfish-mcp:3020
BATFISH_MCP_API_KEY=change_me
BATFISH_DEFAULT_NETWORK=demo
BATFISH_DEFAULT_SNAPSHOT=snapshot
# ───────── n8n Web ─────────
N8N_PORT=5678
N8N_ENCRYPTION_KEY=long_random_encryption_key
N8N_USER_MANAGEMENT_JWT_SECRET=supersecretjwtkey
# ───────── n8n 所有者 / 管理 ─────────
N8N_ADMIN_EMAIL=admin@cpdemo.com
N8N_ADMIN_FIRST_NAME=Admin
N8N_ADMIN_LAST_NAME=User
N8N_ADMIN_PASSWORD=change_me
# ───────── n8n 基本身份验证 ─────────
N8N_BASIC_AUTH_USER=admin
N8N_BASIC_AUTH_PASSWORD=change_me
# ───────── Ollama ─────────
OLLAMA_HOST=ollama-cpu:11434
OLLAMA_PORT=11434
# ───────── 其他 UI ─────────
OPEN_WEBUI_PORT=3000
FLOWISE_PORT=3001
LANGFLOW_PORT=7860
QDRANT_PORT=6333
# ───────── MCP(填写您使用的) ─────────
DOC_CLIENT_ID=
SECRET_KEY=
DOC_REGION=
MANAGEMENT_HOST=
SMS_API_KEY=
TE_API_KEY=
REPUTATION_API_KEY=
SPARK_MGMT_CLIENT_ID=
SPARK_MGMT_SECRET_KEY=
SPARK_MGMT_REGION=
SPARK_MGMT_INFINITY_PORTAL_URL=
HARMONY_SASE_CLIENT_ID=
HARMONY_SASE_SECRET_KEY=
HARMONY_SASE_REGION=
CPINFO_LOG_LEVEL=info
```
> 💡 **提示**
> - `N8N_ADMIN_*` 用于配置器调用 `/rest/owner/setup`。
> - `N8N_BASIC_AUTH_*` 必须与配置器使用的身份验证匹配。
> - 仅填充您实际使用的 MCP 变量(或在 `docker-compose.yml` 中注释掉这些服务)。
---
## 构建和配置文件
### 构建自定义 n8n 镜像
Check Point MCP 边车使用一个**自定义 n8n 基础镜像**,其中包含内置的 MCP CLI 和包装器。
```bash
docker compose build n8n
```
这会生成一个镜像(例如 `custom-mcp-n8n:custom`),其中包括:
- 所有相关的 `@chkp/*` MCP CLI 包
- `/usr/local/bin` 中的包装器脚本,用于每个 MCP 服务:
- `mcp-documentation`
- `mcp-https-inspection`
- `mcp-quantum-management`
- `mcp-management-logs`
- `threat-emulation-mcp`
- `threat-prevention-mcp`
- `spark-management-mcp`
- `reputation-service-mcp`
- `harmony-sase-mcp`
- `quantum-gw-cli-mcp`
- `quantum-gw-connection-analysis-mcp`
- `quantum-gaia-mcp`
- `cpinfo-analysis-mcp`
### 启动栈
**CPU 栈:
```bash
docker compose --profile cpu up -d
```
**GPU(NVIDIA)Ollama 栈:
```bash
docker compose --profile gpu-nvidia up -d
```
**两者兼有:**
```bash
docker compose --profile cpu --profile gpu-nvidia up -d
```
设置默认配置文件:
```bash
export COMPOSE_PROFILES=cpu
docker compose up -d
```
---
## n8n 配置和自动导入
### 配置器(`n8n-provision`)
`n8n-provision` 边车运行**一次**,执行:
1. 等待 `http://n8n:5678/healthz`
2. 使用 `N8N_ADMIN_*` 调用 `/rest/owner/setup`
3. 使用 `N8N_BASIC_AUTH_*` 和所有者凭证登录
4. 安装 `n8n-nodes-mcp`(幂等 – HTTP 400 “已安装”即可)
5. 退出
安全地重新运行;它将**跳过**已完成的步骤。
### 自动导入(`n8n-import`)
如果您将导出的资产放入:
- `./n8n/backup/credentials`
- `./n8n/backup/workflows`
`n8n-import` 容器将在所有容器都运行正常后执行:
```bash
n8n import:credentials --separate --input=/backup/credentials
n8n import:workflow --separate --input=/backup/workflows
```
留空这些文件夹以跳过自动导入。
---
## NetBox + n8n 示例
三个 NetBox 示例工作流包含在:
- `n8n/backup/workflows/netbox-list-devices.json`
- `n8n/backup/workflows/netbox-list-prefixes.json`
- `n8n/backup/workflows/netbox-find-device-by-name.json`
这些工作流由 `n8n-import` 与其他备份工作流一起导入。
### 设置
1. 在 NetBox UI(`http://localhost:8000`)中为用户配置文件 API 令牌创建一个 NetBox API 令牌。
2. 在 `.env` 中设置 `NETBOX_API_TOKEN`。
3. 确保 `NETBOX_BASE_URL` 保持为 `http://netbox:8080` 以进行网络内 n8n 调用。
4. 重启 n8n 服务:
```bash
docker compose --profile cpu up -d n8n n8n-import
```
每个工作流以手动触发器启动,可以通过编辑 `NetBox Config` 节点快速调整。
---
## 🛰️ Batfish 服务
该栈包括三个 Batfish 相关容器在同一个 `demo` 网络上:
- `batfish` - Batfish 集成引擎(`9997` 协调器 API,`9996` 工作器服务)
- `batfish-mcp` - Batfish API 桥接器服务(`/healthz`, `/tools`, `/networks`, `/questions`, `/query`)
- `batfish-cli` - 用于交互式故障排除的 pybatfish 实用程序容器
包含的 n8n 示例工作流:
- `n8n/backup/workflows/batfish-mcp-list-networks.json`
### 设置
1. 在 `.env` 中设置 `BATFISH_MCP_API_KEY`(如果您选择随机密码,则由 `setup.sh` 自动生成)。
2. 启动或重启栈:
```bash
docker compose --profile cpu up -d
```
3. 测试桥接器健康状况:
```bash
curl http://localhost:${BATFISH_MCP_PORT:-7320}/healthz
```
4. 查询桥接器端点(需要 API 密钥):
```bash
curl -H "X-API-Key: ${BATFISH_MCP_API_KEY}" http://localhost:${BATFISH_MCP_PORT:-7320}/networks
```
5. 使用 CLI 容器:
```bash
docker compose exec batfish-cli sh
python -c "from pybatfish.client.session import Session; Session(host='batfish'); print('batfish session ok')"
```
---
## URL 和 MCP 端点
### 主要 Web 界面
| 服务 | URL |
|--------------|-----------------------------|
| n8n | <http://localhost:5678> |
| Open WebUI | <http://localhost:3000> |
| Flowise | <http://localhost:3001> |
| Langflow | <http://localhost:7860> |
| Qdrant | <http://localhost:6333> |
| NetBox | <http://localhost:8000> |
| Batfish | <http://localhost:9997> |
| Batfish MCP 桥接器 | <http://localhost:7320> |
| Ollama(API)| <http://localhost:11434> |
| OpenClaw | <http://localhost:18789> |
| OpenClaw MCP | <http://localhost:3721/mcp> |
`n8n-admin-mcp-server` 仅支持标准输入/输出(无 HTTP 端点)。
### MCP 服务器 – 内部 Docker URL
在 **n8n MCP HTTP 节点**(相同 `demo` 网络)中使用这些:
- 文档 MCP → `http://mcp-documentation:3000`
- HTTPS 检查 MCP → `http://mcp-https-inspection:3001`
- 量子管理 MCP → `http://mcp-quantum-management:3002`
- 管理日志 MCP → `http://mcp-management-logs:3003`
- 威胁仿真 MCP → `http://threat-emulation-mcp:3004`
- 威胁防护 MCP → `http://threat-prevention-mcp:3005`
- 火花管理 MCP → `http://spark-management-mcp:3006`
- 信誉服务 MCP → `http://reputation-service-mcp:3007`
- harmany SASE MCP → `http://harmony-sase-mcp:3008`
- 量子网关 CLI MCP → `http://quantum-gw-cli-mcp:3009`
- 量子网关连接分析 MCP → `http://quantum-gw-connection-analysis-mcp:3010`
- 量子盖亚 MCP → `http://quantum-gaia-mcp:3011`
- CPInfo 分析 MCP → `http://cpinfo-analysis-mcp:3012`
- OpenClaw MCP → `http://openclaw-mcp-server:3721/mcp`
### MCP 服务器 – 从主机
如果端口已发布:
- 文档 MCP → <http://localhost:7300>
- HTTPS 检查 MCP → <http://localhost:7301>
- 量子管理 MCP → <http://localhost:7302>
- 管理日志 MCP → <http://localhost:7303>
- 威胁仿真 MCP → <http://localhost:7304>
- 威胁防护 MCP → <http://localhost:7305>
- 火花管理 MCP → <http://localhost:7306>
- 信誉服务 MCP → <http://localhost:7307>
- Harmany SASE MCP → <http://localhost:7308>
- 量子网关 CLI MCP → <http://localhost:7309>
- 量子网关连接分析 MCP → <http://localhost:7310>
- 量子盖亚 MCP → <http://localhost:7311>
- CPInfo 分析 MCP → <http://localhost:7312>
- OpenClaw MCP → <http://localhost:3721/mcp>
从另一台机器,使用 `http://<docker-host-ip>:73xx`。
### Batfish 服务 URL
- Batfish(内部)→ `http://batfish:9997`
- Batfish MCP 桥接器(内部)→ `http://batfish-mcp:3020`
- Batfish MCP 桥接器(主机)→ <http://localhost:7320>
### n8n MCP 节点配置
在 n8n 的 MCP 客户端节点(例如 `mcpClientTool`)中:
- **连接类型/模式**:`http`
- **基本 URL**:`http://<mcp-service-name>:<port>`(例如,`http://threat-emulation-mcp:3004`)
- **请勿**设置“包”或“命令”为 `@chkp/...`。
如果包字段已设置,n8n 将尝试 `npx @chkp/...` 在容器中,您将看到:
- `npm warn exec The following package was not found and will be installed`
- `Error [ERR_MODULE_NOT_FOUND]: Cannot find package '@chkp/mcp-utils'`
HTTP 模式 + 边车 = 清洁,可预测的行为。
---
## 🔌 Open WebUI 的 n8n 管道
包含的 `n8n_pipe.py` 允许 Open WebUI 与 n8n 工作流通信。
### 配置
1. **默认 URL**:管道预配置为发送请求到 `http://n8n:5678/webhook/n8n-pipe`。
2. **多个工作流**:您可以使用此管道与**任何** n8n 工作流。
- 在 Open WebUI 中,转到 **管理员面板** -> **函数**(或 **管道**)。
- 选择 **N8N 管道**。
- 编辑 **N8N URL** 阀门以指向您期望的工作流的 Webhook URL(例如 `http://n8n:5678/webhook/my-custom-agent`)。
- 您甚至可以复制管道文件以拥有多个命名管道指向不同的代理!
### 工作流要求
要与此管道配合使用,工作流必须:
1. 以 **Webhook** 节点启动。
2. 方法:`POST`.
3. 路径:匹配您配置的 URL(例如 `n8n-pipe`)。
4. 使用 **响应 Webhook** 节点响应。
---
## Ollama 模型
`ollama-pull-*` 边车等待 Ollama API,然后拉取配置的模型,例如:
- `llama3.1:latest`
- `nomic-embed-text:latest`
要更改拉取哪些模型,请编辑 `docker-compose.yml` 中的 `command:`:
```bash
ollama list
ollama rm <model-name>
```
---
## 许可证
本项目采用 [MIT 许可证](https://opensource.org/licenses/MIT)。
## 数据与持久化
该堆栈使用命名的 Docker 卷,因此您可以销毁容器并保留数据。
| 卷名 | 描述 |
|-------------------|--------------------------------------------|
| `n8n_storage` | n8n 配置,用户数据,一些缓存的元数据 |
| `postgres_storage`| n8n 的 PostgreSQL 数据库 |
| `netbox_postgres_storage` | NetBox 的 PostgreSQL 数据库 |
| `netbox_media_storage` | NetBox 用户上传的媒体和报告 |
| `batfish_storage` | Batfish 快照和分析工作空间 |
| `ollama_storage` | Ollama 模型和数据 |
| `qdrant_storage` | Qdrant 集合 |
| `open-webui` | Open WebUI 数据 |
| `flowise` | Flowise 数据 |
| `langflow` | Langflow 数据 |
示例:备份 `n8n_storage` 到本地 tarball:
```bash
docker run --rm -v n8n_storage:/data -v "$(pwd)":/backup busybox \
tar czf /backup/n8n_storage.tgz -C /data .
```
## 故障排除
### A) `n8n-import`: “Mismatching encryption keys”
确保 **所有与 n8n 相关的容器** (`n8n`、`n8n-import`、`n8n-provision`) 使用来自 `.env` 的 **相同** `N8N_ENCRYPTION_KEY` 值。
### B) Provisioner: HTTP 400 “Package already installed”
重新运行时正常。只要您在 **设置 → 社区节点** 中看到 `n8n-nodes-mcp`,就没问题。
### C) MCP 节点显示 `@chkp/...` 安装错误
如果日志显示:
- `npm warn exec The following package was not found and will be installed`
- `Error [ERR_MODULE_NOT_FOUND]: Cannot find package '@chkp/mcp-utils'`
…那么该节点处于 **包模式**。将其切换到 **HTTP** 并指向正确的 MCP URL,例如:
```text
http://management-logs-mcp:3003
```
### D) 无法从 Docker 内部访问 MCP
从 `n8n` 容器中,使用 **服务名称** 而不是 `localhost`:
```bash
docker compose exec n8n sh
# Inside
curl http://mcp-documentation:3000/
```
如果成功,则 MCP 侧车运行正常且可访问。
### E) Postgres 连接问题
检查数据库日志:
```bash
docker compose logs postgres | tail -n 50
```
确保:
- `POSTGRES_USER`、`POSTGRES_PASSWORD`、`POSTGRES_DB` 在 `postgres`、`n8n` 和 `n8n-import` 之间匹配。
### F) 未检测到 GPU
- 确保您使用的是 `gpu-nvidia` 配置文件。
- 验证 NVIDIA 工具包:
```bash
docker run --rm --gpus all nvidia/cuda:12.3.2-base nvidia-smi
```
如果此操作失败,请在使用 GPU 配置文件之前修复 GPU 驱动程序/工具包。
## 更新与重置
### 更新
- **n8n-nodes-mcp** – 通过 n8n UI 更新(设置 → 社区节点)或在您的 provisioner/Dockerfile 中调整版本并重建。
- **Check Point MCP CLI** – 在 `docker/n8n/Dockerfile` 中调整版本并重建:
```bash
docker compose build n8n
```
- **基础镜像** – 更新底层 `n8n` 版本(修复 "n8n 未运行最新版本"):
```bash
# 这会拉取最新的基础镜像并重建您的自定义镜像
docker compose build --pull n8n
# 然后重启服务
docker compose --profile cpu up -d n8n
```
> **注意**:不要运行 `docker compose pull n8n`。这将失败,因为它试图从 Docker Hub 拉取您的*本地自定义镜像*。始终使用 `build --pull`。
(根据需要调整配置文件)。
### 完全重置(实验室风格)
如果您想要一个 **干净的 slate**(全新数据库,无工作流,无凭证,无聊天记录):
```bash
# 警告:删除所选配置文件的卷
docker compose --profile cpu down -v
docker compose --profile cpu up -d
```
这将重新创建整个环境,从零开始重新运行 provisioner,并重新导入 `./n8n/backup` 中的任何资产。
## 📚 指南
特定工作流和代理的详细文档:
- **[Lakera Playground Guide](docs/guides/n8n_Lakera_Playground_Guide.md)**:Lakera Guard 工作流的完整指南,包括对每个节点和安全逻辑的技术深入探讨。
- **[Threat Prevention Agent Guide](docs/guides/CheckPoint_Threat_Prevention_Guide.md)**:Check Point Threat Prevention 代理文档,涵盖 AI 代理、MCP 客户端和策略管理。
## 🚀 生产部署
此 playground 现已 **生产就绪**,具有企业级功能:
### 快速生产检查清单
1. **生成安全配置**
```bash
./setup.sh
./scripts/validate-env.sh
```
2. **运行健康检查**
```bash
./scripts/health-check.sh --profile cpu
```
3. **设置自动备份**
```bash
# 添加到 crontab 进行每日备份
0 2 * * * /path/to/scripts/backup-volumes.sh --retention-days 30
```
4. **启用 CI/CD**
- GitHub Actions 工作流位于 `.github/workflows/`
- 每次推送自动运行测试和安全扫描
### 生产文档
- **[生产部署指南](docs/operations/PRODUCTION_DEPLOYMENT.md)** - 全面指南涵盖:
- 安全强化和 SSL/TLS 配置
- 机密管理(Docker Secrets、Vault 等)
- 扩展和可用性
- 监控和可观察性
- 合规性(SOC2、GDPR 等)
- **[备份和恢复指南](docs/operations/BACKUP_RECOVERY.md)** - 完整的备份策略:
- 自动卷备份
- 灾难恢复程序
- RTO/RPO 定义
- 时间点恢复
### 自动测试
在本地运行集成测试:
```bash
# 运行完整测试套件
./tests/integration-test.sh
# 测试特定配置文件
PROFILE=cpu ./tests/integration-test.sh
```
CI/CD 在每次推送和拉取请求时自动运行测试。
## 安全最佳实践
1. **使用设置脚本**:始终使用 `./setup.sh` 为您的环境生成强大、随机的密码。
2. **保护 `.env` 文件**:您的 `.env` 文件包含敏感凭证。永远不要将其提交到版本控制中。
3. **API 密钥**:谨慎输入 API 密钥。确保您信任运行此堆栈的环境。
4. **网络隔离**:此堆栈设计用于本地开发。如果部署到共享网络,请确保有适当的防火墙规则。
MCP 配置
以下是此 MCP Server 的配置信息,可直接复制到 Cursor 或其他 MCP 客户端中使用。
mcp.json
连接信息
猜你喜欢
暂无推荐服务器