Я создал простое Spring Boot
Rest-приложение, которое я докеризировал и работает как положено, когда я использую mongo
локально.
Однако теперь я попытался использовать Docker Compose
для запуска контейнера Mongo
для подключения, а не к моему локальному хосту.
Docker-compose up -d
работает, но когда я пытаюсь достичь своей конечной точки, которая запрашивает Mono go, я получаю:
Caused by: java.net.UnknownHostException: mongo: System error
at java.base/java.net.Inet4AddressImpl.lookupAllHostAddr(Native Method) ~[na:na]
at java.base/java.net.InetAddress$PlatformNameService.lookupAllHostAddr(Unknown Source) ~[na:na]
at java.base/java.net.InetAddress.getAddressesFromNameService(Unknown Source) ~[na:na]
at java.base/java.net.InetAddress$NameServiceAddresses.get(Unknown Source) ~[na:na]
at java.base/java.net.InetAddress.getAllByName0(Unknown Source) ~[na:na]
at java.base/java.net.InetAddress.getAllByName(Unknown Source) ~[na:na]
at java.base/java.net.InetAddress.getAllByName(Unknown Source) ~[na:na]
at com.mongodb.ServerAddress.getSocketAddresses(ServerAddress.java:203) ~[mongodb-driver-core-3.11.2.jar!/:na]
В моем файле application.properties у меня есть:
spring.data.mongodb.uri=mongodb://mongo:27017/pokerStats
Мой Docker file
для моего весеннего загрузочного приложения (называемого pokerStats):
#
FROM adoptopenjdk/openjdk11:alpine-jre
#
ARG JAR_FILE=/build/libs/pokerStats-0.0.1-SNAPSHOT.jar
#
WORKDIR /opt/app
#
COPY ${JAR_FILE} app.jar
#
ENTRYPOINT ["java","-jar","app.jar"]
Мой docker-compose.yml
файл:
version: "3"
services:
pokerStats:
image: pokerStats
ports:
- 8080:8080
depends_on:
- db
db:
image: mongo
volumes:
- ./database:/data
ports:
- "27017:27017"