簡體   English   中英

如何將我的 docker 連接到遠程數據庫?

[英]How do I connect my docker to remote database?

我想訪問在 url 上運行的 mongo db:“xyz”(遠程主機),並且在我的 spring boot 應用程序屬性中,我提到了“xyz”的 mongodb url。 現在,當我在 docker 容器中運行此應用程序時,它無法連接到遠程 url,並顯示連接被拒絕錯誤。 我們如何從容器內部訪問遠程數據庫?

下面是我的 DockerFile

FROM openjdk:8-jdk-alpine
RUN apk add --no-cache bash
RUN apk add --no-cache curl
EXPOSE 8090
COPY target/<jar file> /application.jar
RUN mkdir /logs
RUN /bin/sh -c "apk add --no-cache bash"
ENTRYPOINT ["/usr/bin/java"]
CMD ["-DLOG_DIR=/logs", "-DLOG_FILE=application.log", "-jar", "-Dspring.profiles.active=local", "-Xmx1g", "/application.jar", "&"]

我的 Application.properties:

spring.data.mongodb.uri = <mongodb-url>

我將我的 docker 鏡像構建為:

docker build -t app:app .

我將 docker 鏡像運行為:

docker run -d <imageId> 

以下命令完成工作。

docker run --net=host <imageId>

使用此命令要小心,因為--net=host使容器與主機共享網絡。 容器的網絡將不再孤立。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM