如何将docker-machine连接到我的VMs docker-daemon端口?

鉴于这两个系统:

  • 虚拟机#1运行一个jenkins容器,它有一个安装/工作的docker-machine
  • VM#2运行一个简单的Ubuntu与docker-engine安装

两台虚拟机都通过网桥连接。 我可以从jenkins容器中找出VM#2上的Docker-Host。

现在我想通过使用VM#2 Docker-Host来告诉我的jenkins容器中的docker docker-machine来构build一个图像(位于jenkins工作区内)。

所有关于这个文件只显示我像virtualbox或aws驱动程序,但我想连接到我自己创build的Docker主机。

我试过的

在我的Jenkins容器中,我创build了两个Environent Variables:

 $ export DOCKER_HOST=tcp://192.168.0.102:2375 $ export DOCKER_MACHINE_NAME=dev 

curl 192.168.0.102:2375产生{"message":"page not found"}

运行docker-machine env dev给我Host does not exist: "dev"

PS

我不想将docker docker-engine安装到我的jenkins映像中。 我想要使​​用瘦客户端docker-machine将映像构build委托给VM#2,仅此而已

假设VM#1是192.168.33.100 ,VM#2是192.168.33.101 。 两者都可以达到对方。 现在你根本不需要把docker-machine变成照片。 你可以在下面做

 export DOCKER_HOST=tcp://192.168.33.101:2375/ docker build .... 

假设你为docker主机打开了端口2375。 有关此环境variables的详细信息,请参阅以下url

https://docs.docker.com/engine/reference/commandline/cli/#environment-variables

编辑-1

如果你想添加一个退出机器到docker-machine你可以使用下面的方法

 docker-machine create --driver none -url=tcp://VM2:2376 VM2 

注意:您还需要为此设置TLS,否则直接由于https://github.com/docker/machine/issues/1532而无法与Docker-machine一起使用