让Mac Docker客户端通过vagrant连接到virtualbox

让Mac Docker客户端通过vagrant连接到virtualbox

我正在尝试将 docker tcp ip 公开给我的主机 docker 客户端。我有以下设置

  • Virtualbox 4.3.26 r98988
  • vagrant 1.7.2
  • Mac OSX Mavericks 10.9.5
  • Centos 6.6 vagrant box 正在运行(docker 1.5.0)
  • 主机和 vagrant box 上的 Docker 1.5

仅供参考,我可以在浏览器中顺利访问公开的 docker 容器。我在 VagrantFile 中公开了必要的端口

在此处输入图片描述

在 /etc/init.d/docker 中我已将 other_args 设置如下:

other_args="--insecure-registry 192.168.254.96:5000 -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock"

DOCKER_HOST=tcp://127.0.0.1:2375我在主机上进行了以下设置,但出现以下错误:

FATA[0076] An error occurred trying to connect: Get https://127.0.0.1:2375/v1.17/containers/json: EOF

如果我设置 DOCKER_HOST=tcp://172.17.8.101 然后我得到

FATA[0076] An error occurred trying to connect: Get https://127.0.0.1:2375/v1.17/containers/json: EOF I'm not able to run the usual docker ps from the host.

我尝试运行 netstat -tulpn 来查看 virtualbox/vagrant 实例正在监听什么。似乎 2375 正在监听。

网络状态-tulpn

我尝试查看该实例的虚拟网络设置 在此处输入图片描述 在此处输入图片描述 在此处输入图片描述

我有几个问题

  1. 我在 /etc/init.d/docker 中正确设置了 tcp 连接吗?应该是我在 vagrant 中设置的 ip 吗?
  2. 有没有办法检查 docker 客户端是否正在与 mac 主机连接?

答案1

我最终使用了 https (https://docs.docker.com/articles/https/)。完成这些步骤后,我需要停止 iptables 服务/etc/init.d/iptables stop

相关内容