- Stack completo con Mattermost, NocoDB y Sales Bot - Procesamiento OCR de tickets con Tesseract - Sistema de comisiones por tubos de tinte - Comandos slash /metas y /ranking - Documentación completa del proyecto Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
86 lines
2.3 KiB
YAML
86 lines
2.3 KiB
YAML
version: '3.8'
|
|
|
|
# ============================================================================
|
|
# SALES BOT - Docker Compose
|
|
# ============================================================================
|
|
#
|
|
# Servicio: Sales Bot (Bot de ventas con OCR)
|
|
# Requiere: Mattermost y NocoDB corriendo
|
|
# Puerto: 5000
|
|
#
|
|
# Uso:
|
|
# 1. Editar archivo .env con tus credenciales
|
|
# 2. docker-compose build
|
|
# 3. docker-compose up -d
|
|
# Acceder: http://your-server-ip:5000/health
|
|
#
|
|
|
|
services:
|
|
sales-bot:
|
|
build:
|
|
context: .
|
|
dockerfile: Dockerfile
|
|
container_name: sales-bot
|
|
restart: unless-stopped
|
|
ports:
|
|
- "5000:5000"
|
|
environment:
|
|
# === MATTERMOST ===
|
|
MATTERMOST_URL: ${MATTERMOST_URL:-http://host.docker.internal:8065}
|
|
MATTERMOST_BOT_TOKEN: ${MATTERMOST_BOT_TOKEN}
|
|
MATTERMOST_TEAM_NAME: ${MATTERMOST_TEAM_NAME:-sales}
|
|
MATTERMOST_WEBHOOK_SECRET: ${MATTERMOST_WEBHOOK_SECRET}
|
|
MATTERMOST_WEBHOOK_URL: ${MATTERMOST_WEBHOOK_URL}
|
|
|
|
# === NOCODB ===
|
|
NOCODB_URL: ${NOCODB_URL:-http://host.docker.internal:8080}
|
|
NOCODB_TOKEN: ${NOCODB_TOKEN}
|
|
NOCODB_TABLE_VENDEDORES: ${NOCODB_TABLE_VENDEDORES}
|
|
NOCODB_TABLE_VENTAS: ${NOCODB_TABLE_VENTAS}
|
|
NOCODB_TABLE_VENTAS_DETALLE: ${NOCODB_TABLE_VENTAS_DETALLE}
|
|
NOCODB_TABLE_METAS: ${NOCODB_TABLE_METAS}
|
|
|
|
# === FLASK ===
|
|
FLASK_PORT: 5000
|
|
FLASK_DEBUG: "False"
|
|
|
|
# === LOGGING ===
|
|
LOG_LEVEL: INFO
|
|
LOG_FILE: /app/logs/sales-bot.log
|
|
|
|
# === ZONA HORARIA ===
|
|
TZ: America/Mexico_City
|
|
TZ_OFFSET: "-6"
|
|
|
|
volumes:
|
|
# Montar logs para persistencia
|
|
- ./logs:/app/logs
|
|
|
|
# Si quieres desarrollo en caliente, descomentar:
|
|
# - ./app.py:/app/app.py
|
|
# - ./nocodb_client.py:/app/nocodb_client.py
|
|
# - ./mattermost_client.py:/app/mattermost_client.py
|
|
# - ./ocr_processor.py:/app/ocr_processor.py
|
|
# - ./handlers.py:/app/handlers.py
|
|
|
|
networks:
|
|
- sales-bot-network
|
|
|
|
# Extra hosts para conectar con servicios del host
|
|
extra_hosts:
|
|
- "host.docker.internal:host-gateway"
|
|
|
|
healthcheck:
|
|
test: ["CMD", "curl", "-f", "http://localhost:5000/health"]
|
|
interval: 30s
|
|
timeout: 10s
|
|
retries: 3
|
|
start_period: 60s
|
|
|
|
networks:
|
|
sales-bot-network:
|
|
driver: bridge
|
|
|
|
volumes:
|
|
logs:
|