Rancher性能(Docker中的Docker?)

use*_*352 1 jenkins docker docker-compose rancher

看着Rancher,表现如何?我想我的主要问题是,在码头工人的Rancher码头工具中部署了一切吗?阅读http://jpetazzo.github.io/2015/09/03/do-not-use-docker-in-docker-for-ci/后,我试图远离这个想法.看起来像Docker/Jenkins的Rancher CI管道是docker中的docker,但其余的呢?如果我设置一个docker-compose或从他们的目录中部署一些东西,它是docker中的所有docker吗?我已经阅读了他们的文档,这个简单的问题仍然悬在我头上.任何指导都将非常感谢.

谢谢

小智 6

Rancher本身未在Docker(DinD)中部署Docker.Rancher,rancher/server和rancher/agent的主要组件都是普通容器.在正常部署中,服务器运行业务流程部分以及目录,Docker Machine供应,websocket-proxy和MySQL的一些其他关键服务.如果需要,所有这些都可以打破,但为了简单起步,它一体化.我们使用s6来管理编排和数据库进程.

rancher/agent容器具有特权,并要求用户绑定装载主机Docker套接字.我们在容器中打包一个Docker二进制文件,并在启动时使用它与主机通信.它类似于Mac与Boot2docker的对话方式,二进制文件只是一个与远程Docker守护进程通信的客户端.一旦代理被引导,它就通过websocket连接回传给Rancher服务器容器.部署容器和堆栈时,Rancher服务器将事件发送给代理,然后代理调用主机 Docker守护程序进行部署.部署的容器作为主机上的普通Docker容器运行,就像用户键入一样docker run ....事实上,Rancher的一个简洁功能是,如果您docker run ...在主机上键入,生成的容器将显示在Rancher UI中.

Rancher目录中的Jenkins条目,当使用Swarm插件时,也在进行Docker套接字的主机绑定安装.我们有一些早期的实验,使用DinD来测试Jenkins的一些概念,但那些没有发布.