2016-06-20 91 views
14

Docker 1.12引入了bundle的新概念。一种新的文件格式来描述一组服务。Docker包和docker-compose有什么区别?

我的应用程序已经部署在docker-compose。我的每个环境都有一个docker-compose.yml,我可以通过docker-compose up快速部署我的应用。

据我了解的this post泊坞捆绑只是内置泊坞一种新的方式做同样的事情作为搬运工,撰写不作为外部软件。

是吗?我可以期待从Docker捆绑销售,我不会与码头组成

+1

好问题,我不觉得任何答案能够解决这个问题。我仍然不知道DAB对docker-compose有什么优势。 – Roddy

回答

7

Dockerfile可以内置到图像中,并且可以从该图像创建容器。

同样,可以将docker-compose.yml内置到分布式应用程序包(DAB)中,并且可以从该包创建堆栈。

从这个意义上说,捆绑包是一个多业务可分配的图像格式。

0

主要的不同之处在于,docker bundle是面向使用的,这个新的服务器端编排功能使用了docker服务的内部流程。

码头构成所有的逻辑客户端,因为它是在服务器(守护进程)做不同请求的客户端(组成)。

对于码头包,所有流量都由引擎管理。

+0

感谢您对两者之间根本区别的解释。你能详细阐述一下Docker bundle比docker-compose的优点吗?是码头合成的结局吗?什么时候更适合用于其他? –

+1

对不起,但目前我还没有一个清晰的未来写作形象..我目前的想法是,民建联可以在规模和协调专注,因为目前的服务API只能在群模式下工作,撰写将部分的堆栈,但为本地和开发使用。 目前这是我的想法,但我希望能在几天之内让它变得更好。 – GianArb

0

现在DAB中没有一些功能可以与码头工具相比,现在可以像链接一样进行批量安装。映射到组合文件中映射的容器端口的主机端口与Swarm随机分配端口到服务没有任何关联。您可以通过

搬运工服务检查nginx的

当然,你可以随时更新的服务的端口进行验证,例如

搬运工服务更新--publish加8080 :80 nginx