Docker容器无法连接到主机:没有到主机的路由

时间:2017-05-09 20:50:52

标签: networking docker docker-compose

我一直在尝试使用docker compose设置docker环境。令我难以理解的一个问题是我的docker容器无法到达我的主机。

我使用以下撰写文件设置容器:

version: '3'
services:
  webapp:
    image: ...
    ports:
      - "8080:8080"

当我进入容器时,我能够ping我的主机:

ping ${dockerHostIP}

然而,当我尝试使用容器内的curl检索主页时:

curl http://${dockerHostIP}:8080

我明白了:

curl: (7) Failed connect to ${dockerHostIP}:8080; No route to host

我无法弄清楚应该怎样做才能解决这个无路由到主机错误。不幸的是,我需要能够做到这一点,因为Web应用程序在内部使用其主机名发出请求。

Traceroute结果:

traceroute ${dockerHostIP}
traceroute to ${dockerHostIP} (${dockerHostIP}), 30 hops max, 60 byte packets
 1  ${dockerHostName} (${dockerHostIP})  0.039 ms !X  0.012 ms !X  0.007 ms !X

1 个答案:

答案 0 :(得分:2)

令我惊讶的是,在我的情况下,这实际上是一个防火墙问题。

更新/启用docker主机上的tcp端口[2375]可修复此问题。

sudo firewall-cmd --zone=public --add-port=2375/tcp --permanent

sudo firewall-cmd --reload 

有用的链接: 1. enter link description here 2. enter link description here