Files
Elecciones-2025/docker-compose.yml

77 lines
1.9 KiB
YAML
Raw Normal View History

services:
elecciones-api:
build:
context: ./Elecciones-Web
dockerfile: src/Elecciones.Api/Dockerfile
container_name: elecciones-api
restart: unless-stopped
2025-09-03 13:49:35 -03:00
env_file: ./.env
# .NET expone el puerto 8080 por defecto en contenedores
expose:
- "8080"
networks:
- elecciones-net
2025-09-03 13:49:35 -03:00
- shared-net
2025-09-03 13:49:35 -03:00
# Servicio del Worker (sin cambios)
elecciones-worker:
build:
context: ./Elecciones-Web
dockerfile: src/Elecciones.Worker/Dockerfile
container_name: elecciones-worker
restart: unless-stopped
env_file: ./.env
networks:
- shared-net
volumes:
- ./logs-worker:/app/logs
2025-09-03 13:49:35 -03:00
# Servicio del Frontend Público (sin cambios)
elecciones-frontend:
build:
context: ./Elecciones-Web/frontend
dockerfile: Dockerfile
container_name: elecciones-frontend
restart: unless-stopped
2025-09-03 13:49:35 -03:00
expose:
- "80"
networks:
- elecciones-net
# --- Frontend Admin ---
elecciones-frontend-admin:
build:
context: ./Elecciones-Web/frontend-admin
dockerfile: Dockerfile
container_name: elecciones-frontend-admin
restart: unless-stopped
expose:
- "80"
networks:
- elecciones-net
# Proxy Inverso que expone los servicios al exterior
proxy:
image: nginx:1.25-alpine
container_name: elecciones-proxy
restart: unless-stopped
volumes:
2025-09-03 13:49:35 -03:00
# Mapea nuestro archivo de configuración de proxy local al contenedor
- ./proxy/nginx.conf:/etc/nginx/conf.d/default.conf
ports:
2025-09-03 13:49:35 -03:00
# Puerto para el sitio público/widgets
- "8600:80"
2025-09-03 13:49:35 -03:00
# --- NUEVO PUERTO: Puerto para el panel de administración ---
- "8700:81"
networks:
- elecciones-net
depends_on:
- elecciones-api
- elecciones-frontend
2025-09-03 13:49:35 -03:00
- elecciones-frontend-admin
networks:
elecciones-net:
driver: bridge
shared-net:
external: true