作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我关注 this关于 docker 的教程,它设置了一个小型的 hello world 服务器。
这是预期的行为:
docker run -d -p 5000:5000 training/webapp:latest python app.py
curl http://dockerhost:5000
Hello world!
curl http://dockerhost:5000
curl: (6) Could not resolve host: dockerhost
ping http;//dockerhost:5000
unknown host http://dockerhost:5000
nslookup http://dockerhost:5000
;; connection timed out; no servers could be reached
netstat -utapen | grep 5000
tcp6 0 0 :::5000 :::* LISTEN 0 251303 -
最佳答案
这更像是一个 DNS
问题。
当您使用 curl
等命令时, ping
或 nslookup
或其他打开与另一端的连接的命令,它们希望您通知另一端的 IP 地址,或者可以解析为 IP 的名称。
在您的情况下,dockerhost
是名称,而不是 IP,您的系统无法将此名称解析为 IP 地址。
有很多解决方案,就像上面提到的那样。
您可以将名称的 IP 地址告知您的系统 dockerhost
但在 /etc/hosts
中插入一行文件(如果你在 Linux 机器上):
echo "127.0.0.1 dockerhost" >> /etc/hosts
C:\Windows\System32\drivers\etc
如果你在 Windows 机器上。
dockerhost
是
127.0.0.1
,与您的
localhost
相同,或者,您自己的机器。
ping
它:
ping dockerhost
ping
的节点和
nslookup
只需要一个名称,没有协议(protocol)(
http://
)和端口(
5000
)。
curl
确实期望协议(protocol)和端口。
127.0.0.1
而不是
dockerhost
.
关于curl - 使用 curl 连接到 docker,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41887775/
我正在开发一个 voip 调用应用程序。我需要做的是在接到来电时将 Activity 带到前台。我在应用程序中使用 Twilio,并在收到推送消息时开始调用。 问题是我试图在接到任何电话时显示 Act
我是一名优秀的程序员,十分优秀!