¿Cuáles son las "mejores prácticas" para servir un contenedor docker desde un nombre de dominio específico?
Por ejemplo:
- El Contenedor1 ejecuta la aplicación A en el puerto 8080 y se accede a ella a través de AwesomeAppA.com
- Container2 ejecuta la aplicación B en el puerto 8090 y se accede a ella a través de AwesomeAppB.com
A continuación, puede, por ejemplo:
- Haga que su contenedor exponga el puerto utilizado por Gunicorn / uWSGI, por ejemplo, y use Nginx en el host de Docker para manejar el proxy.
- Pero también puede hacer que su contenedor ejecute Nginx internamente y use HAProxy.
Pero ¿cuál es mejor? ¿Hay otras opciones preferidas, o realmente se trata de preferencias personales?
La opción 1 se ajusta al principio de responsabilidad única y le permite ejecutar su aplicación 1 en el contenedor y dejar que el host maneje el proxy. También permite que Nginx maneje SSL, pero requiere configuración y aprovisionamiento adicionales además de solo "ejecutar docker".