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

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
```