【问题标题】:Docker host network not workingDocker 主机网络不工作
【发布时间】:2017-02-27 12:57:09
【问题描述】:

我真的对这个问题感到困惑。我在我们的内部网络中有两台计算机。两台计算机都可以 ping 内部服务器。 两台计算机都有相同的 docker 版本。 我在两台计算机上使用 docker run -it --rm --name cont1 --net=host java:8 命令运行简单的 docker 容器。然后 ssh 进入容器并尝试 ping 内部服务器。其中一个容器可以 ping 内部服务器,但另一个无法访问任何内部服务器。

这怎么可能?你对此有什么想法吗?

谢谢

【问题讨论】:

  • 能否在两台服务器上显示这条命令的日志:"sudo docker network inspect bridge"
  • cat /etc/resolv.conf 在故障主机上。另外,显示 ping 错误,是超时还是无法解决。
  • 我现在不知道它是如何工作的。我在mac上重新安装了docker,现在它可以工作了。非常感谢你们。

标签: docker docker-networking


【解决方案1】:

通过端口映射将容器连接到同一网络中的其他系统。 为此,您需要使用端口映射运行 docker 容器。 比如 - docker run -it --rm --name cont1 -p host_ip:host_port:container_port java:8

例如,docker run -it --rm --name cont1 -p 192.168.134.122:1234:1500 java:8

注意:docker run 中给出的容器端口在 Dockerfile 中公开

现在,例如容器 ip 将是 - 运行中给出的 172.17.0.2 端口是:1500

现在发送到 host_ip(192.168.134.122) 和 host_port(1234) 的请求被重定向到 ip (172.17.0.2) 和端口 (1500) 的容器。

在 iptables -L -n -t nat 中查看绑定细节

谢谢

【讨论】:

    猜你喜欢
    • 2023-03-22
    • 1970-01-01
    • 2021-04-14
    • 2017-09-12
    • 1970-01-01
    • 1970-01-01
    • 2016-02-27
    • 1970-01-01
    • 2021-06-14
    相关资源
    最近更新 更多