Docker连接问题 - 拒绝连接

问题描述 投票:0回答:1

我正在使用Mac OSX而且我在part 4 of the Docker tutorial上,但我无法通过我的网络浏览器访问该网站。当我访问从docker-machine ls命令给出的任何IP地址时,我得到“此站点无法访问”错误。如果我指定端口2377,例如http://192.168.99.100:2377/(也使用端口2376),我至少可以连接,但它会导致“192.168.99.100发送无效响应”错误消息。

当我尝试对端口80和8080的卷曲请求时,它失败了

curl http://192.168.99.100:80
curl: (7) Failed to connect to 192.168.99.100 port 80: Connection refused

如果我指定端口2376或2377它将连接,但我没有收到任何内容,这似乎与我直接从我的Web浏览器访问时得到的“无效响应”错误一致

curl --verbose 192.168.99.100:2376
* Rebuilt URL to: 192.168.99.100:2376/
*   Trying 192.168.99.100...
* TCP_NODELAY set
* Connected to 192.168.99.100 (192.168.99.100) port 2376 (#0)
> GET / HTTP/1.1
> Host: 192.168.99.100:2376
> User-Agent: curl/7.54.0
> Accept: */*
> 

* Connection #0 to host 192.168.99.100 left intact

这是我运行docker-machine ls时的输出

NAME    ACTIVE   DRIVER       STATE     URL                         SWARM   DOCKER        ERRORS
myvm1   *        virtualbox   Running   tcp://192.168.99.100:2376           v18.06.1-ce   
myvm2   -        virtualbox   Running   tcp://192.168.99.101:2376           v18.06.1-ce   

我想我的VM有端口映射问题,但我不知道该怎么办。我试过the accepted answer in this question,但仍然没有运气。

更新

我按照this post的建议尝试了端口转发,但也没有运气。我添加了以下内容,并在VirtualBox管理器中验证了转发规则的存在

VBoxManage controlvm "myvm1" natpf1 "tcp-port8000,tcp,,80,,80";
VBoxManage controlvm "myvm2" natpf1 "tcp-port8000,tcp,,80,,80";

我还为两个vm中的每一个添加了端口7946 TCP / UDP和端口4789 UDP的转发

docker containers virtualbox
1个回答
0
投票

我在研究第4部分时遇到了同样的问题。经过很长一段时间搜索解决方案,但没有工作,然后我检查了我的docker-compose.yml文件,看到端口映射,找到了正确的端口。对我来说是curl -v http://192.168.99.100:4000,它有效:

© www.soinside.com 2019 - 2024. All rights reserved.