Docker es muy util cuando las aplicaciones solo tienen un contenedor, pero usualmente necesitamos orquestar (varias aplicaciones trabajando en conjunto) para presentar un servicio
Aplicacion Web: - Frontend expuesto al usuario - Backend que se comunica con el frontend tiene la logica de negocio - Base de datos: Persistencia
Podriamos tener todo esto en un solo contenedor, es dificil de mantener, cualquier cambio implica redesplegar todo. Por ejemplo un cambio en el backend haria que tambien toque desplegar el front.
Es mejor tener orquestacion
- Contenedor para el backend
- Contenedor para el fronted
- Contenedor/Servicio para la base de datos
Pero esto requiere que estos se puedan comunicar y esto implica ciertos desafios
- Configurar volumenes
- Configurar REDES
- Configurar parametros como el CORS (Origines permitidos cuando se comunican aplicaciones)