当前位置: 首页 > 知识库问答 >
问题:

Docker-访问主机网络和docker网络

韦安怡
2023-03-14

我有一个 docker 容器,我想给它 --network=host AND --network=postgres我需要连接到主机网络才能将主机数据狗服务器 (UDP) 和 postgres 网络用于其数据库。

尝试添加这两个网络会导致docker:冲突选项:无法同时附加用户定义和非用户定义的网络模式。

知道正确的处理方法吗?

共有1个答案

牟波
2023-03-14

您可以使用容器中主机的IP地址向主机发送请求。

然而,一个更好的解决方案是使用--add-host=host.docker.internal:主机网关

extra_hosts:
    - host.docker.internal:host-gateway

其中<code>host.docker。internal是docker容器中主机网络的主机名。这个名字当然可以根据你的喜好而改变。

信用:https://medium.com/@TimvanBaarsen/how-to-connect-to-the-docker-host-from-inside-a-docker-container-112b4c71bc66

 类似资料:
  • 我在一个docker compose文件中运行两个不同的服务。我通过引用容器的服务名称来谈论每个服务。 现在我希望我的容器A也能访问localhost。为此,我添加了network_mode=host的配置,但这会创建一个错误,说明容器A无法与容器B通信。 对于每个撰写文件docker-composs创建一个网络,所以在这种情况下,我应该手动将容器分配到一个专用网络吗?或者是否有任何变通方法来访问

  • 本文向大家介绍Docker主机网络与网桥网络,包括了Docker主机网络与网桥网络的使用技巧和注意事项,需要的朋友参考一下 可用于Docker网络的单主机网络有两种类型:“主机”和“桥”网络。单主机网络意味着它们的影响对于每个单独的主机都是局部的。 在主机网络的情况下,特定的Docker容器可以直接使用主机的网络来发送和接收数据包。对于网桥网络,它需要端口映射才能进行通信。 为了更好地理解它们,让

  • 问题内容: 我有一个具有多个IP地址的专用服务器,某些IP关联了mac地址,而其他IP(在子网中)则没有mac地址。我已经使用以下方法创建了docker macvlan网络: 我的IP:88.99.102.115,Mac:00:50:56:00:60:42。使用以下方法创建了一个容器: 这有效,我可以从外部访问该IP地址托管的Nginx。 IP没有MAC地址且网关不在子网中的情况。 子网:88.9

  • 请考虑以下 我将端口连接到主机,以便管理我的服务,但这些服务只需使用默认的docker网络就可以相互访问。例如,运行在上的程序可以访问并且一些DNS魔术将使其工作。我想将我的主机添加到这个网络中,这样我就可以通过其主机名:port访问容器的端口。

  • 问题内容: 我正在尝试获得以下相当基本的(或我认为)联网设置,以使用Docker 1.9进行工作: 我有多个运行服务的容器,例如一个容器和一个容器(可能有两个以上)。 这些容器通过网络相互连接。 我希望它们可以使用唯一的主机名来寻址(即Python容器应该能够对PostgreSQL容器执行ping操作)。 遵循本教程(https://docs.docker.com/engine/userguide