Files
lastwar/docker/docker-compose.yml
nickpons666 082e01b358 Feature: Reescribir configuración Docker completa
- Dockerfile: PHP 8.3 con Apache, copia todo el código a la imagen
- docker-compose.yml: Sin volúmenes de código, usa env_file
- supervisord.conf: Incluye Apache, Discord bot y colas de procesos
- apache.conf: Configuración de virtualhost con rewrite
- .dockerignore: Excluye archivos innecesarios de la imagen
- Eliminados archivos duplicados de supervisor
- Creada carpeta database/ para init scripts
- Telegram funciona vía webhook (no necesita supervisor)
2026-02-20 21:41:24 -06:00

73 lines
1.6 KiB
YAML
Executable File

version: '3.8'
services:
app:
build:
context: ..
dockerfile: docker/Dockerfile
container_name: lastwar_app
restart: unless-stopped
ports:
- "8080:80"
env_file:
- ../.env
environment:
- DB_HOST=db
- DB_PORT=3306
- DB_NAME=${DB_NAME:-lastwar}
- DB_USER=${DB_USER:-lastwar}
- DB_PASS=${DB_PASS:-}
- LIBRETRANSLATE_URL=http://libretranslate:5000
volumes:
- app_logs:/var/www/html/logs
- app_galeria:/var/www/html/galeria
networks:
- lastwar_network
depends_on:
db:
condition: service_healthy
libretranslate:
condition: service_started
db:
image: mysql:8.0
container_name: lastwar_db
restart: unless-stopped
environment:
MYSQL_ROOT_PASSWORD: ${DB_PASS:-rootpassword}
MYSQL_DATABASE: ${DB_NAME:-lastwar}
MYSQL_USER: ${DB_USER:-lastwar}
MYSQL_PASSWORD: ${DB_PASS:-}
volumes:
- db_data:/var/lib/mysql
- ../database:/docker-entrypoint-initdb.d:ro
networks:
- lastwar_network
healthcheck:
test: ["CMD", "mysqladmin", "ping", "-h", "localhost"]
timeout: 20s
retries: 10
libretranslate:
image: libretranslate/libretranslate
container_name: lastwar_libretranslate
restart: unless-stopped
ports:
- "5000:5000"
networks:
- lastwar_network
healthcheck:
test: ["CMD-SHELL", "curl -f http://localhost:5000/languages || exit 1"]
interval: 30s
timeout: 10s
retries: 3
networks:
lastwar_network:
driver: bridge
volumes:
db_data:
app_logs:
app_galeria: