gpt4 book ai didi

docker - 如何从连接到外部网络的另一个组合访问容器?

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

这是我希望从外部容器(在另一个撰写文件中定义)连接到的带有容器配置的撰写文件:

version: '3.5'
services:
service-to-connect-to:
build: .
networks:
- my-external-network

networks:
my-external-network:
external: true

和另一个包含容器配置的撰写文件,我希望从中连接到 service-to-connect-to :
version: "3.5"

services:
service-to-connect-from:
build: .

我尝试连接到 service-to-connect-to通过这个域:
service-to-connect-to service-to-connect-to.my-external-network my_external_network.service-to-connect-to
但他们都没有工作。

我错在哪里?

谢谢

最佳答案

首先,您必须将两个服务添加到同一网络才能连接它们。所以,后者的撰写文件应该是这样的

version: "3.5"

services:
service-to-connect-from:
build .
networks:
- my-external-network

networks:
my-external-network:
external: true

现在两个服务都在同一个网络上,它们可以使用容器的名称找到彼此。默认情况下,容器名称与服务名称相同,但 docker compose 还以项目名称作为前缀,默认情况下,项目名称是撰写文件所在的目录名称。如果您首先通过 docker-compose up -d 启动服务,您可以看到这一点。然后通过运行 docker ps 查看容器是如何命名的.容器名称可以是例如 project1_service-to-connect-to .使用此名称,您可以从其他服务连接。

如果您愿意,也可以使用 container_name 显式设置容器的名称。服务选项。使用时,compose 不再为容器名称添加前缀。

关于docker - 如何从连接到外部网络的另一个组合访问容器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51522543/

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