services: # Servicio del Backend titulares-api: build: context: . dockerfile: backend/Dockerfile container_name: titulares-api restart: unless-stopped expose: - "8080" networks: - titulares-net - shared-net # Se conecta a la red compartida para acceder a la DB # Servicio del Frontend titulares-frontend: build: context: ./frontend dockerfile: Dockerfile container_name: titulares-frontend restart: unless-stopped expose: - "80" networks: - titulares-net # Proxy Inverso titulares-proxy: image: nginx:1.25-alpine container_name: titulares-proxy restart: unless-stopped volumes: - ./frontend/proxy/nginx.conf:/etc/nginx/conf.d/default.conf ports: - "8905:80" # Usamos el puerto 8905 para no colisionar con otros networks: - titulares-net depends_on: - titulares-api - titulares-frontend networks: # Red interna para la comunicación entre los servicios de esta aplicación titulares-net: driver: bridge # Red externa preexistente para la base de datos shared-net: external: true