Run only tg-userbot in Docker Compose.

Remove embedded n8n and qdrant services from compose and update README to match deployment with external n8n/qdrant and compose-based userbot operations.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-06-24 00:34:00 +03:00
parent 4144c48b46
commit 1c5fad898e
2 changed files with 12 additions and 57 deletions

View File

@@ -1,33 +1,4 @@
version: "3.8"
services: services:
n8n:
image: n8nio/n8n:latest
container_name: dbbot-n8n
ports:
- "5678:5678"
environment:
- N8N_HOST=localhost
- N8N_PORT=5678
- N8N_PROTOCOL=http
- WEBHOOK_URL=http://localhost:5678/
- GENERIC_TIMEZONE=Europe/Moscow
volumes:
- ./n8n_data:/home/node/.n8n
depends_on:
- qdrant
restart: unless-stopped
qdrant:
image: qdrant/qdrant:latest
container_name: dbbot-qdrant
ports:
- "6333:6333"
- "6334:6334"
volumes:
- ./qdrant_data:/qdrant/storage
restart: unless-stopped
tg-userbot: tg-userbot:
build: . build: .
container_name: dbbot-tg-userbot container_name: dbbot-tg-userbot
@@ -35,6 +6,4 @@ services:
- .env - .env
volumes: volumes:
- ./session_data:/app/session - ./session_data:/app/session
depends_on:
- n8n
restart: unless-stopped restart: unless-stopped

View File

@@ -1,7 +1,8 @@
## DBBot: production-схема (n8n + отдельный userbot-контейнер) ## DBBot: production-схема (отдельные n8n/Qdrant + tg-userbot)
Этот проект рассчитан на ситуацию, когда: Этот проект рассчитан на ситуацию, когда:
- `n8n` уже запущен и доступен по URL; - `n8n` уже запущен и доступен по URL;
- `qdrant` уже запущен отдельно;
- бот в чужую группу добавить нельзя; - бот в чужую группу добавить нельзя;
- сообщения читаются через `Telethon userbot` из отдельного Docker-контейнера. - сообщения читаются через `Telethon userbot` из отдельного Docker-контейнера.
@@ -71,32 +72,23 @@ cp .env.example .env
## Подробный цикл запуска проекта ## Подробный цикл запуска проекта
### Шаг 1. Собрать контейнер userbot `docker-compose.yaml` в этом проекте содержит только один сервис: `tg-userbot`.
### Шаг 1. Поднять контейнер tg-userbot
Из корня проекта: Из корня проекта:
```bash ```bash
docker build -t dbbot-userbot:latest . docker compose up -d --build
``` ```
### Шаг 2. Запустить контейнер ### Шаг 2. Проверить, что webhook получает данные
```bash
docker run -d \
--name dbbot-userbot \
--env-file .env \
-v "$(pwd)/session_data:/app/session" \
--restart unless-stopped \
dbbot-userbot:latest
```
### Шаг 3. Проверить, что webhook получает данные
1. Открой `Executions` в `n8n`. 1. Открой `Executions` в `n8n`.
2. Убедись, что появились вызовы `Webhook TG Inbox`. 2. Убедись, что появились вызовы `Webhook TG Inbox`.
3. Проверь, что далее проходят `Build Context Block` и `Qdrant Insert`. 3. Проверь, что далее проходят `Build Context Block` и `Qdrant Insert`.
### Шаг 4. Проверить RAG-ответ ### Шаг 3. Проверить RAG-ответ
1. Напиши вопрос Telegram-боту, подключенному к `Telegram Trigger` в workflow. 1. Напиши вопрос Telegram-боту, подключенному к `Telegram Trigger` в workflow.
2. Проверь выполнение ветки `AI Agent`. 2. Проверь выполнение ветки `AI Agent`.
@@ -115,9 +107,9 @@ docker run -d \
Команды: Команды:
```bash ```bash
docker stop dbbot-userbot docker compose stop
rm -f session_data/history_done.flag rm -f session_data/history_done.flag
docker start dbbot-userbot docker compose up -d
``` ```
## Управление и диагностика ## Управление и диагностика
@@ -125,7 +117,7 @@ docker start dbbot-userbot
Логи контейнера: Логи контейнера:
```bash ```bash
docker logs -f dbbot-userbot docker compose logs -f tg-userbot
``` ```
Проверить, что контейнер жив: Проверить, что контейнер жив:
@@ -137,13 +129,7 @@ docker ps --filter name=dbbot-userbot
Перезапустить после изменения `.env`: Перезапустить после изменения `.env`:
```bash ```bash
docker rm -f dbbot-userbot docker compose up -d --build --force-recreate
docker run -d \
--name dbbot-userbot \
--env-file .env \
-v "$(pwd)/session_data:/app/session" \
--restart unless-stopped \
dbbot-userbot:latest
``` ```
## Формат payload, который скрипт шлет в n8n ## Формат payload, который скрипт шлет в n8n