41 lines
1.3 KiB
YAML
41 lines
1.3 KiB
YAML
|
|
services:
|
||
|
|
# Servicio del Backend
|
||
|
|
backend:
|
||
|
|
build:
|
||
|
|
context: ./backend/src/Titulares.Api
|
||
|
|
dockerfile: Dockerfile
|
||
|
|
container_name: titulares-api
|
||
|
|
# No exponemos puertos al exterior, el proxy se encarga de eso.
|
||
|
|
environment:
|
||
|
|
# Le decimos a ASP.NET Core que escuche en el puerto 8080 en todas las interfaces de red
|
||
|
|
- ASPNETCORE_URLS=http://+:8080
|
||
|
|
networks:
|
||
|
|
- app-net
|
||
|
|
- shared-net # Conectamos a la red externa para la DB
|
||
|
|
restart: unless-stopped
|
||
|
|
|
||
|
|
# Servicio de Nginx (Proxy Inverso + Servidor Frontend)
|
||
|
|
nginx-proxy:
|
||
|
|
build:
|
||
|
|
context: ./frontend # Construimos desde la carpeta del frontend...
|
||
|
|
dockerfile: Dockerfile # ...usando su Dockerfile para generar los estáticos
|
||
|
|
container_name: titulares-proxy
|
||
|
|
# Montamos nuestra configuración personalizada de Nginx
|
||
|
|
volumes:
|
||
|
|
- ./nginx/nginx.conf:/etc/nginx/conf.d/default.conf
|
||
|
|
ports:
|
||
|
|
# Mapeamos el puerto 8905 del host al puerto 80 del contenedor Nginx
|
||
|
|
- "8905:80"
|
||
|
|
networks:
|
||
|
|
- app-net
|
||
|
|
depends_on:
|
||
|
|
- backend # Aseguramos que el backend se inicie antes que el proxy
|
||
|
|
restart: unless-stopped
|
||
|
|
|
||
|
|
networks:
|
||
|
|
# Red interna para la comunicación entre el proxy y el backend
|
||
|
|
app-net:
|
||
|
|
driver: bridge
|
||
|
|
# Definimos la red compartida como externa, ya que fue creada por otro stack
|
||
|
|
shared-net:
|
||
|
|
external: true
|