【问题标题】:Connection Failing to Docker Container连接到 Docker 容器失败
【发布时间】:2021-07-15 23:12:06
【问题描述】:

这是我运行 docker 容器的方式 -

docker run --name docker-test-server -p 5000:5000 -p 4444:4444

容器操作系统 - Ubuntu 14.04 LTS

现在由于我已经将容器的 4444 映射到机器的,我尝试连接 -

root@localhost:/var/repo# nc -vz 127.0.0.1 4444
Connection to 127.0.0.1 4444 port [tcp/*] succeeded!

现在我进入 shell -

docker exec -it docker-test-server /bin/bash

成功进入,我尝试获取机器的IP地址。

root@ec919687cda8:/# ifconfig

eth0      Link encap:Ethernet  HWaddr 02:42:ac:11:00:09
          inet addr:172.17.0.9  Bcast:0.0.0.0  Mask:255.255.0.0
          inet6 addr: fe80::42:acff:fe11:9/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:2227 errors:0 dropped:0 overruns:0 frame:0
          TX packets:2199 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:166686 (166.6 KB)  TX bytes:121473 (121.4 KB)

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

现在我从容器中出来,并尝试通过提供在 ifconfig 中找到的容器的 IP 地址从运行容器的机器连接到容器 -

nc -vz 172.17.0.9 4444
nc: connect to 172.17.0.9 port 4444 (tcp) failed: Connection refused

谁能解释一下

  1. 为什么我无法连接到机器?

  2. 如何连接机器?

我正在运行一个仅安装 ubuntu 14.04 并公开 2 个端口的裸容器。没有什么花哨。

谢谢。

【问题讨论】:

  • 你有 2 个容器,docker-test-server 和 docker-pub-server?你能发一个docker port吗?
  • 你的主机是什么?什么操作系统?你用的是什么版本的docker?
  • @VonC 主机操作系统 - 谷歌云上的 ubuntu 14.04。 Docker 版本 1.10.1,构建 9e83765
  • @user2915097 - 不,我没有两个容器。只有docker-test-server。 docker port docker-test-server 4444/tcp -> 0.0.0.0:4444 5000/tcp -> 0.0.0.0:5000
  • 你应该不需要进入容器,当你映射一个端口时,你应该从你的主机访问它,使用浏览器localhost:5000或类似

标签: docker docker-networking


【解决方案1】:

您需要禁用防火墙或使用 sudo ufw disablesudo ufw

将端口添加到您的 ubuntu 防火墙

我也遇到了同样的问题,但是我没有连接被拒绝,而是超时了。

【讨论】:

    猜你喜欢
    • 2018-11-22
    • 2021-03-23
    • 1970-01-01
    • 2015-01-05
    • 1970-01-01
    • 2021-11-15
    • 2020-06-29
    • 2017-07-16
    • 1970-01-01
    相关资源
    最近更新 更多