Estoy tratando de entender cómo funciona el controlador de ingreso en kubernetes.
Implementé el controlador de ingreso de nginx en un clúster k8s sin sistema operativo (referido a los documentos de ingreso de tipo) localhost ahora apunta a la página predeterminada de nginx.
Implementé una aplicación con un recurso de ingreso con host como "foo.localhost". Puedo acceder a mi aplicación en foo.localhost ahora.
Me gustaría saber cómo nginx pudo hacerlo sin ninguna modificación en el archivo /etc/hosts.
También quiero acceder a mi aplicación desde una máquina diferente a través de la misma/diferente red.
He usado ngrok para esto
ngrok http foo.localhost
pero apunta a la página predeterminada de nginx y no a mi aplicación
¿Cómo puedo acceder usando ngrok si no quiero usar port forward o kube proxy?
En su máquina, localhost y foo.localhost se resuelven en la misma dirección, 127.0.0.1. Esto ya está ahí, no es algo que nginx o k8s hagan. Esa es la razón por la que no puede acceder a eso desde otra máquina, porque ese nombre también se resuelve en el host local para esa máquina, no en el que ejecuta su ingreso k8s. Cuando lo expuso usando ngrok, lo expone con un nombre diferente. Cuando intenta acceder a la entrada con ese nombre, la solicitud contiene un encabezado de Host con la URL ngrok, que no es lo mismo que foo.localhost , por lo que la entrada cree que la solicitud es para un dominio diferente.
Intente exponer su host local en el ingreso usando la URL de ngrok.