U kunt localhost
niet gebruiken in de container is het de container zelf. Daarom krijgt u altijd de foutmelding Verbinding geweigerd.
Je kunt onderstaande dingen doen -
-
Voeg het IP-adres van uw hostmachine toe in
application.properties
bestand van uw Spring Boot-toepassing. (Niet aanbevolen omdat het de portabiliteitslogica van de docker verbreekt) -
Als je
localhost
wilt gebruiken , gebruik--net=host
tijdens het starten van de container. (Niet aanbevolen voor productie omdat er geen logische netwerklaag bestaat) -
Gebruik
--links
voor containercommunicatie met een DNS-naam. (verouderd/verouderd) -
Maak een samenstellingsbestand en bel uw DB vanuit de Spring Boot-app met de servicenaam, omdat ze zich in hetzelfde netwerk bevinden en sterk met elkaar zijn geïntegreerd. (Aanbevolen)
PS - Wanneer je meerdere containers met elkaar moet integreren, ga dan altijd voor docker-compose version 3+
. Gebruik docker run|build
om de grondbeginselen te begrijpen en droog-/testruns uit te voeren.