鉴于这两个系统:
docker-machine
docker-engine
的普通ubuntu 两个虚拟机都通过网络桥连接。我可以在jenkins容器中为VM#2上的Docker-Host卷曲。
现在我想告诉我的jenkins容器中的docker-machine
使用VM#2 Docker-Host构建一个映像(位于jenkins工作区内)。
关于此的所有文档仅向我显示virtualbox或aws等驱动程序,但我想连接到我自己创建的Docker-Host。
我尝试了什么:
在我的Jenkins容器中 我创建了两个Environent变量:
$ 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-engine
安装到我的jenkins图片中。一世 想要使用瘦客户端docker-machine
来委派图像 构建到VM#2,仅此而已
答案 0 :(得分:0)
假设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。有关此环境变量
的详细信息,请参阅以下URLhttps://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一起使用