gpt4 book ai didi

java - 连接本地容器docker

转载 作者:行者123 更新时间:2023-12-02 09:04:23 25 4
gpt4 key购买 nike

我有一个具有以下设置的 docker-compose 配置文件:

version: '3.6'
services:
mongo:
image: mongo
restart: always
ports:
- "27017:27017"
networks:
- devnetwork
discovery:
image: discovery
ports:
- "8761:8761"
networks:
- devnetwork
environment:
- SPRING_PROFILES_ACTIVE=dev
- DISCOVERY_SERVER=discovery
- DISCOVERY_PORT=8761

networks:
devnetwork:

撰写完成后,我构建并运行以下 dockerfile:

FROM openjdk:12    
#RUN echo $(grep $(hostname) /etc/hosts | cut -f1) api >> /etc/hosts
ADD gubee-middleware/target/*.jar /usr/share/middlewareservice/middleware-service.jar
EXPOSE 9670
ENTRYPOINT ["/usr/bin/java", "-XX:+UnlockExperimentalVMOptions","-XX:+UseContainerSupport","-Dspring.profiles.active=dev", "-jar", "/usr/share/middlewareservice/middleware-service.jar"]

如何让我的端口 9670 服务 dockerfile 看到我使用 docker-compose 启动的其他服务?

最佳答案

启动容器时需要将容器附加到 docker compose 创建的网络中。

这可以通过传递 --network=<network-name> 来完成(通过运行 docker network ls 获得)在执行 docker run 时命令。

连接后,您的应用程序将能够使用其名称作为主机来访问通过 compose 启动的容器。例如:http://mongo:27017

关于java - 连接本地容器docker,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59938348/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com