Commit inicial con archivos existentes

This commit is contained in:
2026-01-17 16:14:00 -06:00
parent 48671dc88e
commit 4c48c279de
2539 changed files with 2412708 additions and 0 deletions

84
docker/Dockerfile Executable file
View File

@@ -0,0 +1,84 @@
FROM ubuntu:22.04
LABEL maintainer="bot-lastwar"
LABEL description="Bot LastWar - Discord/Telegram Bot with Web Interface"
ARG DEBIAN_FRONTEND=noninteractive
RUN apt-get update && apt-get install -y \
apache2 \
php \
php-cli \
php-mysql \
php-mbstring \
php-xml \
php-curl \
php-zip \
php-json \
libapache2-mod-php \
composer \
nodejs \
npm \
supervisor \
curl \
git \
unzip \
nano \
libzip-dev \
bash \
bash-completion \
readline-common \
less \
&& rm -rf /var/lib/apt/lists/*
RUN a2enmod rewrite headers env
RUN npm install -g yarn
RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer
RUN mkdir -p /var/www/html/bot/logs \
&& mkdir -p /var/www/html/bot/galeria \
&& mkdir -p /var/run/supervisor \
&& mkdir -p /etc/supervisor/conf.d
COPY docker/apache/*.conf /etc/apache2/sites-available/
COPY docker/supervisor/*.conf /etc/supervisor/conf.d/
RUN a2ensite reod-dragon.ddns.net.conf || true
RUN a2dissite 000-default.conf || true
WORKDIR /var/www/html/bot
EXPOSE 80
COPY docker/entrypoint.sh /entrypoint.sh
RUN chmod +x /entrypoint.sh
COPY docker/zimaos.env.template /var/www/html/bot/docker/
COPY . . /var/www/html/bot/
# Eliminar archivos .env de desarrollo que vienen del código fuente
# En Docker usaremos el archivo .env generado desde variables de entorno
RUN rm -f /var/www/html/bot/.env.reod /var/www/html/bot/.env.pruebas /var/www/html/bot/.env.example 2>/dev/null || true
RUN rm -rf /var/www/html/bot/docker/Dockerfile \
/var/www/html/bot/docker-compose*.yml 2>/dev/null || true
RUN chmod -R 777 /var/www/html/bot/logs \
/var/www/html/bot/galeria \
/var/run/supervisor
RUN touch /var/log/apache2/error.log \
/var/log/apache2/access.log \
&& chmod 666 /var/log/apache2/*.log
# Set index.php as first DirectoryIndex
RUN cat > /etc/apache2/mods-enabled/dir.conf << 'EOF'
<IfModule mod_dir.c>
DirectoryIndex index.php index.html index.cgi index.pl index.xhtml index.htm
</IfModule>
EOF
CMD ["/entrypoint.sh"]

165
docker/README-ZimaOS.md Executable file
View File

@@ -0,0 +1,165 @@
# Docker Configuration for ZimaOS
## Archivos Incluidos
```
docker/
├── Dockerfile # Imagen base Ubuntu 22.04 (incluye todo el proyecto)
├── docker-compose.yml # Desarrollo local
├── docker-compose.local.yml # Pruebas locales con volumen
├── zimaos-docker-compose.yml # Producción ZimaOS
├── zimaos.env.template # Template de variables
├── entrypoint.sh # Script de inicio (genera .env)
├── supervisord.conf # Configuración Supervisor
├── supervisor/
│ ├── discordbot.conf # Bot de Discord
│ └── translation-worker.conf # Worker de traducciones
├── apache/
│ ├── ponsprueba.ddns.net.conf # Apache desarrollo
│ └── reod-dragon.ddns.net.conf # Apache producción
└── www/
└── index.html # Página de bienvenida
```
## Uso en ZimaOS
### 1. Preparar Archivos
Copia `zimaos-docker-compose.yml` a tu almacenamiento en ZimaOS.
### 2. Configurar Variables
Edita `zimaos-docker-compose.yml` y ajusta las variables de entorno:
```yaml
environment:
- DB_HOST=tu_host_db
- DB_PORT=tu_puerto
- DB_NAME=tu_db
- DB_USER=tu_usuario
- DB_PASS=tu_password
- DISCORD_BOT_TOKEN=tu_token
- TELEGRAM_BOT_TOKEN=tu_token
- APP_BASE_URL=http://tu-dominio:8086
# ... otras variables
```
### 3. Ejecutar
```bash
# Descargar imagen
docker compose -f zimaos-docker-compose.yml pull
# Iniciar contenedor
docker compose -f zimaos-docker-compose.yml up -d
# Ver logs
docker logs -f bot_lastwar_funcionando
```
### 4. Detener
```bash
docker compose -f zimaos-docker-compose.yml down
```
## Actualizar a nueva versión
```bash
docker compose -f zimaos-docker-compose.yml pull
docker compose -f zimaos-docker-compose.yml up -d
```
## Variables de Entorno
| Variable | Descripción | Ejemplo |
|----------|-------------|---------|
| `APP_ENVIRONMENT` | Entorno (pruebas\|reod) | pruebas |
| `USE_LOCALHOST` | Usar URLs localhost | false |
| `DB_*` | Configuración base de datos | Ver template |
| `DISCORD_*` | Credenciales Discord | Ver template |
| `TELEGRAM_*` | Credenciales Telegram | Ver template |
| `N8N_*` | URLs de N8N | Ver template |
| `JWT_SECRET` | Secreto para sesiones | `openssl rand -hex 32` |
| `INTERNAL_API_KEY` | API key interna | `openssl rand -hex 32` |
| `APP_BASE_URL` | URL base pública | http://tu-ip:8086 |
## Desarrollo Local
Para desarrollar localmente con volúmenes (los cambios se ven sin rebuild):
```bash
docker compose -f docker-compose.local.yml up -d
```
Para producción (imagen autocontenida):
```bash
docker compose -f docker-compose.yml build
docker compose -f docker-compose.yml up -d
```
## Puertos
- **8086** → Puerto HTTP del contenedor (80)
## Servicios
- **Apache2** - Servidor web
- **Discord Bot** - Bot de Discord
- **Translation Worker** - Procesador de traducciones
## Volúmenes Persistentes
Los volúmenes para logs y galería se crean automáticamente con Docker:
- `bot-logs` → /var/www/html/bot/logs
- `bot-galeria` → /var/www/html/bot/galeria
Para verlos:
```bash
docker volume ls | grep bot
```
## Solución de Problemas
### El contenedor no inicia
```bash
docker logs bot_lastwar_funcionando
```
### Verificar variables de entorno
```bash
docker exec bot_lastwar_funcionando env | grep -E "DB_|DISCORD_|TELEGRAM_|APP_"
```
### Verificar archivo .env generado
```bash
docker exec bot_lastwar_funcionando cat /var/www/html/bot/.env
```
### Base de datos no conecta
Verificar credenciales en variables de entorno.
### Reiniciar contenedor
```bash
docker restart bot_lastwar_funcionando
```
## Construcción de imagen (para actualizar)
```bash
# En la carpeta del proyecto
docker compose build
# Subir al registry
docker tag bot-bot-lastwar:latest 10.10.4.3:5000/bot-lastwar:latest
docker push 10.10.4.3:5000/bot-lastwar:latest
```

72
docker/README.md Executable file
View File

@@ -0,0 +1,72 @@
# Docker Configuration for Bot LastWar
## Estructura de Archivos
```
docker/
├── Dockerfile # Imagen base Ubuntu con Apache, PHP, Composer, Node, Supervisor
├── docker-compose.yml # Orquestación del contenedor
├── entrypoint.sh # Script de inicio
├── supervisord.conf # Configuración principal de Supervisor
├── supervisor/
│ ├── discordbot.conf # Proceso del bot de Discord
│ └── translation-worker.conf # Worker de traducciones
├── apache/
│ ├── ponsprueba.ddns.net.conf # Configuración Apache desarrollo
│ └── reod-dragon.ddns.net.conf # Configuración Apache producción
├── www/
│ └── index.html # Página de bienvenida
└── zimaos.env.template # Template de variables para ZimaOS
```
## Configuración para ZimaOS
1. Copia `docker/zimaos.env.template` a `.env` en ZimaOS
2. Ajusta las variables según tu red
3. La variable clave es `APP_ENVIRONMENT`:
- `pruebas` → usa `.env.pruebas`
- `reod` → usa `.env.reod`
## Construcción y Ejecución
```bash
# Construir la imagen
docker-compose build
# Ejecutar el contenedor
docker-compose up -d
# Ver logs
docker logs bot_lastwar_funcionando
# Detener
docker-compose down
```
## Puertos
- **8086 (host)** → **80 (contenedor)**
- Accede a: http://localhost:8086
## Servicios Incluidos
- **Apache2** - Servidor web en puerto 80
- **PHP** - Interpreter para la aplicación
- **Composer** - Gestor de dependencias PHP
- **Node.js** - Runtime JavaScript
- **Supervisor** - Gestión de procesos (bot + worker)
- **Discord Bot** - Bot de Discord (configurable via APP_ENVIRONMENT)
- **Translation Worker** - Procesador de cola de traducciones
## Variables de Entorno
| Variable | Descripción | Default |
|----------|-------------|---------|
| `APP_ENVIRONMENT` | Entorno (pruebas\|reod) | pruebas |
| `TZ` | Zona horaria | UTC |
## Notas
- Los logs se almacenan en `./logs/`
- La galería de imágenes está en `./galeria/`
- El contenedor copia automáticamente el .env correspondiente según `APP_ENVIRONMENT`

View File

@@ -0,0 +1,21 @@
<VirtualHost *:80>
ServerName reod-dragon.ddns.net
SetEnv APP_ENVIRONMENT "reod"
SetEnv DOCKER_CONTAINER "1"
# Content Security Policy para permitir jsdelivr CDN
Header set Content-Security-Policy "default-src 'self'; script-src 'self' https://cdn.jsdelivr.net https://code.jquery.com 'unsafe-inline'; style-src 'self' https://cdn.jsdelivr.net 'unsafe-inline'; connect-src 'self' https://cdn.jsdelivr.net; img-src 'self' data: https:; font-src 'self' https://cdn.jsdelivr.net data:;"
ErrorLog /var/www/html/bot/logs/reod_error.log
CustomLog /var/www/html/bot/logs/reod_access.log combined
DocumentRoot /var/www/html/bot/
<Directory /var/www/html/bot/>
Options -Indexes +FollowSymLinks
AllowOverride All
Require all granted
</Directory>
php_admin_value upload_max_filesize 20M
php_admin_value post_max_size 20M
</VirtualHost>

38
docker/deploy.sh Executable file
View File

@@ -0,0 +1,38 @@
#!/bin/bash
# ============================================
# Script para construir y subir imagen Docker
# Target: 10.10.4.3:5000/bot-lastwar:v2
# ============================================
set -e
# Cambiar al directorio del proyecto (carpeta padre de donde está este script)
cd "$(dirname "$0")/.."
echo "=========================================="
echo "Construyendo imagen Docker..."
echo "Directorio: $(pwd)"
echo "=========================================="
# Construir la imagen usando el Dockerfile en docker/
docker build -t bot-lastwar:latest -f docker/Dockerfile .
echo "=========================================="
echo "Etiquetando imagen para el registry..."
echo "=========================================="
# Etiquetar la imagen con la versión v2
docker tag bot-lastwar:latest 10.10.4.3:5000/bot-lastwar:v2
echo "=========================================="
echo "Subiendo imagen al registry..."
echo "=========================================="
# Subir al registry
docker push 10.10.4.3:5000/bot-lastwar:v2
echo "=========================================="
echo "Imagen subida exitosamente:"
echo "10.10.4.3:5000/bot-lastwar:v2"
echo "=========================================="

60
docker/diagnostico_zimaos.sh Executable file
View File

@@ -0,0 +1,60 @@
# Comandos para diagnosticar problemas en ZimaOS
# Copia y pega estos comandos en la terminal de ZimaOS
# 1. Ver logs del discordbot
docker exec bot_lastwar_funcionando cat /var/www/html/bot/logs/discordbot.out.log
# 2. Ver logs del discordbot (errores)
docker exec bot_lastwar_funcionando cat /var/www/html/bot/logs/discordbot.err.log
# 3. Ver logs del translation-worker
docker exec bot_lastwar_funcionando cat /var/www/html/bot/logs/translation-worker.out.log
# 4. Verificar si el archivo discord_bot.php existe
docker exec bot_lastwar_funcionando ls -la /var/www/html/bot/discord_bot.php
# 5. Verificar el .env generado
docker exec bot_lastwar_funcionando cat /var/www/html/bot/.env
# 6. Verificar si los archivos del proyecto están montados
docker exec bot_lastwar_funcionando ls -la /var/www/html/bot/ | head -20
# 7. Verificar permisos de la carpeta logs
docker exec bot_lastwar_funcionando ls -la /var/www/html/bot/logs/
# 8. Ver todos los procesos en ejecución
docker exec bot_lastwar_funcionando ps aux
# 9. Ver estado de supervisor
docker exec bot_lastwar_funcionando supervisorctl status
# ==== DIAGNÓSTICO DE APACHE ====
# 10. Ver si Apache está escuchando en puerto 80
docker exec bot_lastwar_funcionando netstat -tulpn | grep :80
# 11. Ver procesos de Apache
docker exec bot_lastwar_funcionando ps aux | grep apache
# 12. Ver log de error de Apache
docker exec bot_lastwar_funcionando cat /var/log/apache2/error.log
# 13. Ver log de error del sitio
docker exec bot_lastwar_funcionando cat /var/www/html/bot/logs/apache2.err.log
# 14. Probar Apache directamente dentro del contenedor
docker exec bot_lastwar_funcionando curl -v http://localhost:80/ 2>&1 | head -20
# 15. Ver configuración de Apache
docker exec bot_lastwar_funcionando apache2ctl -S 2>&1
# 16. Ver módulos de Apache cargados
docker exec bot_lastwar_funcionando apache2ctl -M 2>&1 | grep php
# 17. Verificar si hay algo escuchando en el puerto publicado
netstat -tulpn | grep 8086
# 18. Ver logs del contenedor
docker logs bot_lastwar_funcionando 2>&1 | tail -30
# 19. Reiniciar el contenedor (si necesitas hacer cambios)
docker restart bot_lastwar_funcionando

20
docker/docker-compose.local.yml Executable file
View File

@@ -0,0 +1,20 @@
version: '3.8'
services:
bot-lastwar:
container_name: bot_lastwar_funcionando
build:
context: .
dockerfile: docker/Dockerfile
ports:
- "8086:80"
environment:
- APP_ENVIRONMENT=pruebas
- USE_LOCALHOST=true
- TZ=UTC
volumes:
- .:/var/www/html/bot:rw
- ./docker/supervisor/supervisord.conf:/etc/supervisor/supervisord.conf:ro
working_dir: /var/www/html/bot
restart: unless-stopped
command: ["/entrypoint.sh"]

66
docker/entrypoint.sh Executable file
View File

@@ -0,0 +1,66 @@
#!/bin/bash
set -e
echo "=========================================="
echo "Bot LastWar - Docker Startup Script"
echo "=========================================="
ENVIRONMENT=${APP_ENVIRONMENT:-reod}
echo "Environment: $ENVIRONMENT"
echo "Generando archivo .env desde variables de entorno..."
# Eliminar todos los archivos .env existentes para evitar conflictos
rm -f /var/www/html/bot/.env* 2>/dev/null || true
env | grep -E "^(DB_|JWT_|DISCORD_|TELEGRAM_|LIBRETRANSLATE_|N8N_|APP_|INTERNAL_API_KEY|TEST_ENV_LOAD)" > /tmp/env_vars.txt
# Determinar el nombre del archivo .env según el entorno
if [ "$ENVIRONMENT" = "reod" ]; then
ENV_FILE="/var/www/html/bot/.env"
else
ENV_FILE="/var/www/html/bot/.env.${ENVIRONMENT}"
fi
{
echo "# Auto-generado desde variables de entorno"
echo "# NO editar manualmente - los cambios se perderán al reiniciar"
echo ""
while IFS='=' read -r name value; do
[ -z "$name" ] && continue
# Renombrar APP_BASE_URL a APP_URL para compatibilidad con el código
if [ "$name" = "APP_BASE_URL" ]; then
echo "APP_URL=${value}"
else
echo "${name}=${value}"
fi
done < /tmp/env_vars.txt
} > "$ENV_FILE"
rm -f /tmp/env_vars.txt
echo "Archivo .env generado"
if [ -f /var/www/html/bot/composer.json ]; then
echo "Instalando dependencias de Composer..."
composer install --no-interaction --optimize-autoloader --no-dev 2>/dev/null || composer install --no-interaction
fi
mkdir -p /var/www/html/bot/logs 2>/dev/null || true
mkdir -p /var/www/html/bot/galeria 2>/dev/null || true
mkdir -p /var/run/supervisor 2>/dev/null || true
chmod -R 777 /var/www/html/bot/logs /var/log/apache2 2>/dev/null || true
touch /var/log/apache2/error.log 2>/dev/null || true
touch /var/log/apache2/access.log 2>/dev/null || true
chmod 666 /var/log/apache2/*.log 2>/dev/null || true
chown -R www-data:www-data /var/www/html/bot/logs /var/log/apache2 2>/dev/null || true
echo "Configurando sitio Apache..."
if [ "$ENVIRONMENT" = "reod" ]; then
a2ensite reod-dragon.ddns.net.conf 2>/dev/null || true
else
a2dissite reod-dragon.ddns.net.conf 2>/dev/null || true
fi
echo "Iniciando Supervisor..."
exec /usr/bin/supervisord -c /etc/supervisor/supervisord.conf

View File

@@ -0,0 +1,9 @@
[program:discordbot]
command=/usr/bin/php /var/www/html/bot/discord_bot.php
directory=/var/www/html/bot/
autostart=true
autorestart=true
stderr_logfile=/var/www/html/bot/logs/discordbot.err.log
stdout_logfile=/var/www/html/bot/logs/discordbot.out.log
user=root
redirect_stderr=false

View File

@@ -0,0 +1,17 @@
[supervisord]
nodaemon=true
logfile=/var/www/html/bot/logs/supervisor.log
loglevel=info
pidfile=/var/run/supervisor/supervisord.pid
childlogdir=/var/www/html/bot/logs
user=root
[program:apache2]
command=/bin/bash -c "source /etc/apache2/envvars && exec apache2 -D FOREGROUND"
autostart=true
autorestart=true
stdout_logfile=/var/www/html/bot/logs/apache2.out.log
stderr_logfile=/var/www/html/bot/logs/apache2.err.log
[include]
files=/etc/supervisor/conf.d/*.conf

View File

@@ -0,0 +1,19 @@
[program:translation-worker]
command=/usr/bin/php /var/www/html/bot/process_translation_queue.php
directory=/var/www/html/bot/
user=root
autostart=true
autorestart=true
stdout_logfile=/var/www/html/bot/logs/translation-worker.out.log
stderr_logfile=/var/www/html/bot/logs/translation-worker.err.log
redirect_stderr=true
[program:queue-processor]
command=/bin/bash -c "while true; do sleep 60; /usr/bin/php /var/www/html/bot/process_queue.php; done"
directory=/var/www/html/bot/
user=root
autostart=true
autorestart=true
stdout_logfile=/var/www/html/bot/logs/queue-processor.out.log
stderr_logfile=/var/www/html/bot/logs/queue-processor.err.log
redirect_stderr=true

View File

@@ -0,0 +1,73 @@
name: bot-lastwar
services:
bot-lastwar:
cpu_shares: 90
command:
- /entrypoint.sh
container_name: bot_lastwar_funcionando
deploy:
resources:
limits:
memory: 16663138304
reservations:
devices: []
environment:
- APP_BASE_URL=https://reod-dragon.ddns.net
- APP_ENV=production
- APP_ENVIRONMENT=reod
- APP_URL=https://reod-dragon.ddns.net
- DB_DIALECT=mysql
- DB_HOST=10.10.4.17
- DB_NAME=bot
- DB_PASS=MiPo6425@@
- DB_PORT=3390
- DB_USER=nickpons666
- DISCORD_BOT_TOKEN=MTM4NTc5MDM0NDU5NDk4NTA2MQ.GvobiS.TRQM9dX7vDjmuGVa3Ckp6YRtGEWxdW0gBDbvCI
- DISCORD_CLIENT_ID=1385790344594985061
- DISCORD_CLIENT_SECRET=hK9SNiYdenHQVxakt8Mx3RoMkZ5oOJvk
- DISCORD_GUILD_ID=1338327171013541999
- INTERNAL_API_KEY=b5dda33b8eb062e06e100c98a8947c0248b6e38973dfd689e81f725af238d23c
- JWT_ALGORITHM=HS256
- JWT_EXPIRATION=3600
- JWT_SECRET=19c5020fa8207d2c3b9e82f430784667e001f1eb733848922f7bcb9be98f93c2
- LIBRETRANSLATE_URL=http://10.10.4.17:5000
- N8N_IA_WEBHOOK_URL=https://n8n-dragon.ddns.net/webhook/ia
- N8N_IA_WEBHOOK_URL_DISCORD=https://n8n-dragon.ddns.net/webhook/42e803ae-8aee-4b1c-858a-6c6d3fbb6230
- N8N_PROCESS_QUEUE_WEBHOOK_URL=https://n8n-dragon.ddns.net/webhook/telegram-unified
- N8N_TOKEN=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiI4MWY4YjU3YS0wMTg2LTQ1NTctOWZlMC1jYWUxNjZlYzZlMTkiLCJpc3MiOiJuOG4iLCJhdWQiOiJwdWJsaWMtYXBpIiwiaWF0IjoxNzU1OTMwODM5fQ.2tLbddyhMTKplp9n-qVNiAgQCUj2YEvVASwLnNjgCt0
- N8N_URL=https://n8n-dragon.ddns.net
- TELEGRAM_BOT_TOKEN=8469229183:AAEVIV5e7rjDXKNgFTX0dnCW6JWB88X4p2I
- TELEGRAM_WEBHOOK_TOKEN=webhook_secure_token_12345
- TEST_ENV_LOAD=caos_cargado
- TZ=America/Mexico_City
- USE_LOCALHOST=false
image: 10.10.4.3:5000/bot-lastwar:latest
labels:
icon: https://icon.casaos.io/main/all/bot-lastwar.png
ports:
- target: 80
published: "8086"
protocol: tcp
restart: unless-stopped
user: 0:0
volumes:
- type: bind
source: /media/ZimaOS-HD/AppData/bot_lastwar/logs
target: /var/www/html/bot/logs
devices: []
cap_add: []
network_mode: bridge
privileged: false
x-casaos:
author: self
category: self
hostname: ""
icon: https://icon.casaos.io/main/all/bot-lastwar.png
index: /
is_uncontrolled: false
port_map: "8086"
scheme: http
store_app_id: bot-lastwar
title:
custom: ""
en_us: bot-lastwar

View File

@@ -0,0 +1,77 @@
# ZimaOS Docker Compose Configuration for Bot LastWar
# Contenedor: bot_lastwar_funcionando
# Puerto: 8086 -> 80
#
# INSTRUCCIONES PARA ZIMAOS:
# 1. Copia este archivo en ZimaOS
# 2. Ajusta todas las variables de entorno según tu entorno
# 3. La imagen ya contiene todos los archivos del proyecto
# 4. Ejecuta: docker compose -f zimaos-docker-compose.yml up -d
#
# La imagen se descarga automáticamente del registry: 10.10.4.3:5000/bot-lastwar:latest
services:
bot-lastwar:
image: 10.10.4.3:5000/bot-lastwar:latest
container_name: bot_lastwar_funcionando
ports:
- "8086:80"
environment:
# Configuración de la aplicación
- APP_ENV=production
- APP_ENVIRONMENT=reod
- APP_DEBUG=false
- USE_LOCALHOST=false
- TZ=America/Mexico_City
- APP_URL=https://reod-dragon.ddns.net
# Configuración de la base de datos
- DB_HOST=10.10.4.17
- DB_PORT=3390
- DB_NAME=bot
- DB_USER=nickpons666
- DB_PASS=MiPo6425@@
- DB_DIALECT=mysql
# Configuración de JWT
- JWT_SECRET=19c5020fa8207d2c3b9e82f430784667e001f1eb733848922f7bcb9be98f93c2
- JWT_ALGORITHM=HS256
- JWT_EXPIRATION=3600
# Configuración de Discord
- DISCORD_GUILD_ID=1338327171013541999
- DISCORD_CLIENT_ID=1385790344594985061
- DISCORD_CLIENT_SECRET=hK9SNiYdenHQVxakt8Mx3RoMkZ5oOJvk
- DISCORD_BOT_TOKEN=MTM4NTc5MDM0NDU5NDk4NTA2MQ.GvobiS.TRQM9dX7vDjmuGVa3Ckp6YRtGEWxdW0gBDbvCI
# Configuración de Telegram
- TELEGRAM_BOT_TOKEN=8469229183:AAEVIV5e7rjDXKNgFTX0dnCW6JWB88X4p2I
- TELEGRAM_WEBHOOK_TOKEN=webhook_secure_token_12345
- TEST_ENV_LOAD=caos_cargado
# LibreTranslate
- LIBRETRANSLATE_URL=http://10.10.4.17:5000
# N8N Integration
- N8N_URL=https://n8n-dragon.ddns.net
- N8N_TOKEN=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiI4MWY4YjU3YS0wMTg2LTQ1NTctOWZlMC1jYWUxNjZlYzZlMTkiLCJpc3MiOiJuOG4iLCJhdWQiOiJwdWJsaWMtYXBpIiwiaWF0IjoxNzU1OTMwODM5fQ.2tLbddyhMTKplp9n-qVNiAgQCUj2YEvVASwLnNjgCt0
# Configuración para migración a n8n
- APP_BASE_URL=https://reod-dragon.ddns.net
- INTERNAL_API_KEY="b5dda33b8eb062e06e100c98a8947c0248b6e38973dfd689e81f725af238d23c"
- N8N_PROCESS_QUEUE_WEBHOOK_URL="https://n8n-dragon.ddns.net/webhook/telegram-unified"
- N8N_IA_WEBHOOK_URL="https://n8n-dragon.ddns.net/webhook/ia"
- N8N_IA_WEBHOOK_URL_DISCORD="https://n8n-dragon.ddns.net/webhook/42e803ae-8aee-4b1c-858a-6c6d3fbb6230"
restart: unless-stopped
user: "0:0"
command: ["/entrypoint.sh"]
volumes:
# Volúmenes opcionales para persistencia (puedes quitarlos si no los necesitas)
- bot-logs:/var/www/html/bot/logs
- bot-galeria:/var/www/html/bot/galeria
volumes:
bot-logs:
bot-galeria:

50
docker/zimaos.env.template Executable file
View File

@@ -0,0 +1,50 @@
# ============================================
# Plantilla de variables de entorno para Docker
# Copiar este archivo a .env y configurar
# ============================================
# Configuración de la aplicación
APP_ENV=production
APP_ENVIRONMENT=reod
APP_DEBUG=false
USE_LOCALHOST=false
TZ=America/Mexico_City
APP_URL=https://reod-dragon.ddns.net
# Configuración de la base de datos
DB_HOST=10.10.4.17
DB_PORT=3390
DB_NAME=bot
DB_USER=nickpons666
DB_PASS=MiPo6425@@
DB_DIALECT=mysql
# Configuración de JWT
JWT_SECRET=19c5020fa8207d2c3b9e82f430784667e001f1eb733848922f7bcb9be98f93c2
JWT_ALGORITHM=HS256
JWT_EXPIRATION=3600
# Configuración de Discord
DISCORD_GUILD_ID=1338327171013541999
DISCORD_CLIENT_ID=1385790344594985061
DISCORD_CLIENT_SECRET=hK9SNiYdenHQVxakt8Mx3RoMkZ5oOJvk
DISCORD_BOT_TOKEN=MTM4NTc5MDM0NDU5NDk4NTA2MQ.GvobiS.TRQM9dX7vDjmuGVa3Ckp6YRtGEWxdW0gBDbvCI
# Configuración de Telegram
TELEGRAM_BOT_TOKEN=8469229183:AAEVIV5e7rjDXKNgFTX0dnCW6JWB88X4p2I
TELEGRAM_WEBHOOK_TOKEN=webhook_secure_token_12345
TEST_ENV_LOAD=caos_cargado
# LibreTranslate
LIBRETRANSLATE_URL=http://10.10.4.17:5000
# N8N Integration
N8N_URL=https://n8n-dragon.ddns.net
N8N_TOKEN=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiI4MWY4YjU3YS0wMTg2LTQ1NTctOWZlMC1jYWUxNjZlYzZlMTkiLCJpc3MiOiJuOG4iLCJhdWQiOiJwdWJsaWMtYXBpIiwiaWF0IjoxNzU1OTMwODM5fQ.2tLbddyhMTKplp9n-qVNiAgQCUj2YEvVASwLnNjgCt0
# Configuración para migración a n8n
APP_BASE_URL=https://reod-dragon.ddns.net
INTERNAL_API_KEY=b5dda33b8eb062e06e100c98a8947c0248b6e38973dfd689e81f725af238d23c
N8N_PROCESS_QUEUE_WEBHOOK_URL=https://n8n-dragon.ddns.net/webhook/telegram-unified
N8N_IA_WEBHOOK_URL=https://n8n-dragon.ddns.net/webhook/ia
N8N_IA_WEBHOOK_URL_DISCORD=https://n8n-dragon.ddns.net/webhook/42e803ae-8aee-4b1c-858a-6c6d3fbb6230