No puede usar localhost
dentro del contenedor, es el contenedor mismo. Por lo tanto, siempre obtendrá el error de conexión rechazada.
Puedes hacer las siguientes cosas:
-
Agregue la IP de su máquina host en
application.properties
archivo de su aplicación Spring Boot. (No recomendado ya que rompe la lógica de portabilidad de la ventana acoplable) -
En caso de que quieras usar
localhost
, utilice--net=host
mientras arranca el contenedor. (No recomendado para producción ya que no existe una capa de red lógica) -
Usar
--links
para la comunicación del contenedor con un nombre DNS. (obsoleto/heredado) -
Cree un archivo de redacción y llame a su base de datos desde la aplicación Spring Boot con el nombre del servicio, ya que estarán en la misma red y altamente integrados entre sí. (Recomendado)
PD:siempre que necesite integrar varios contenedores, elija docker-compose version 3+
. Usa docker run|build
para comprender los fundamentos y realizar ejecuciones de prueba/secado.