Docker basado en NginX para una aplicación y múltiples dominios

Docker basado en NginX para una aplicación y múltiples dominios

Utilizo Docker con imagen nginx para ejecutar mi sitio.

Tengo la siguiente configuración:

docker-compose.yml

version: '7.1'

services:
  #
  # Conflicts with any local HTTP server.
  # If you have a local Nginx, you must stop it.
  #
  nginx:
    image: nginx:1.12.0-alpine
    container_name: nginx
    ports:
      - "80:80"
    volumes:
      - ./files/nginx/nginx.conf:/etc/nginx/nginx.conf:ro
      - ./files/nginx/sites-enabled:/etc/nginx/sites-enabled:ro
    network_mode: bridge

sitio-uno.conf

upstream site-one.local {
  server host.docker.internal:9293 fail_timeout=0;
}

server {
  listen 80;
  server_name site-one.local *.site-one.local;

  client_max_body_size 50M;
  error_page 500 502 503 504 /50x.html;

  location = /50x.html {
    root html;
  }

  try_files $uri/index.html $uri @site-one.local;
  location @site-one.local {
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header Host $http_host;
    proxy_redirect off;
    proxy_pass http://site-one.local;
  }
}

Tengo pestañas en la aplicación web y cuando hago clic en una página se abre con un nuevo nombre de dominio site-two.local/my-pagey devuelve el error:

Este sitio no puede ser site-two.local se negó a conectarse.

¿Cómo agregar un dominio adicional site-two.localpara la misma aplicación?

Respuesta1

¿Cómo agregar un dominio adicional site-two.local para la misma aplicación?

Cambiar la server_nameconfiguración debería funcionar... Pero no estoy seguro de si este error fue causado por nginx o su aplicación.

  server_name site-one.local *.site-one.local site-two.local *.site-two.local;

Quizás crear otro bloque server {...para site-two.local también funcione.

información relacionada