Tengo varios servicios dockerizados, que sirven http (y https). El puerto http interno (80) se asigna en el nivel del acoplador a un puerto diferente, por lo que se puede acceder al host. Y esto está funcionando bien:
curl localhost:1234
Me lleva a mi servicio http en el contenedor.
Ahora me gustaría que esto sea accesible a través de un dns, sin tener que especificar el puerto (quiero proteger a los clientes de esta asignación de puertos). Me gustaría usar nginx para reenviar solicitudes a http://myserver1
-> http://localhost:1234
.
¿Se puede configurar nginx de esa manera? Se puede configurar para reenvío múltiple, de la siguiente manera:
http://myserver1 --> http://localhost:1234
http://myserver2 --> http://localhost:1235
...
linux
dns
port-forwarding
nginx
dangonfast
fuente
fuente
Respuestas:
Sí puede.
la opción nombre_servidor se usa para encontrar la mejor coincidencia entre diferentes sitios alojados en el mismo servidor nginx como
y otro como
De esta manera, pueden ejecutarse tanto en el puerto 80 como coincidir, dependiendo de si son llamados por http: // myserver1 o http: // myserver2 .
¿Ahora cómo conectarse a sus servicios? Puede definir proveedores de servicios ascendentes como
y luego redirigirlo a través de
fuente