77 lines
1.9 KiB
YAML
77 lines
1.9 KiB
YAML
services:
|
|
elecciones-api:
|
|
build:
|
|
context: ./Elecciones-Web
|
|
dockerfile: src/Elecciones.Api/Dockerfile
|
|
container_name: elecciones-api
|
|
restart: unless-stopped
|
|
env_file: ./.env
|
|
# .NET expone el puerto 8080 por defecto en contenedores
|
|
expose:
|
|
- "8080"
|
|
networks:
|
|
- elecciones-net
|
|
- shared-net
|
|
|
|
# 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
|
|
|
|
# Servicio del Frontend Público (sin cambios)
|
|
elecciones-frontend:
|
|
build:
|
|
context: ./Elecciones-Web/frontend
|
|
dockerfile: Dockerfile
|
|
container_name: elecciones-frontend
|
|
restart: unless-stopped
|
|
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:
|
|
# Mapea nuestro archivo de configuración de proxy local al contenedor
|
|
- ./proxy/nginx.conf:/etc/nginx/conf.d/default.conf
|
|
ports:
|
|
# Puerto para el sitio público/widgets
|
|
- "8600:80"
|
|
# --- NUEVO PUERTO: Puerto para el panel de administración ---
|
|
- "8700:81"
|
|
networks:
|
|
- elecciones-net
|
|
depends_on:
|
|
- elecciones-api
|
|
- elecciones-frontend
|
|
- elecciones-frontend-admin
|
|
|
|
networks:
|
|
elecciones-net:
|
|
driver: bridge
|
|
shared-net:
|
|
external: true |