Docker 再学习 (10) Docker Compose和Docker Stack区别

Submitted by Lizhe on Wed, 02/27/2019 - 04:14

 

一开始接触 docker-compose.yaml的时候使用的都是 docker-compose up 命令, 但是在 yaml 文件中加入了 deploy 希望得到多个copy的时候它总提示

docker-compose up 不支持 deploy 属性

然后让使用 docker stack deploy 命令, 那么这里我的疑问在于 这两种方式调用 yaml 配置文件到底有什么区别

原来

 

Swarm模式已经在1.12中集成到Docker Engine中,并给我们带来了几个新工具。 其中,我们可以在不安装Docker Compose的情况下,可以使用docker-compose.yml文件来提供堆栈的Docker容器

 

区别:

1. stack 命令不支持build

2. docker compose 不支持 deploy

3. docker stack 是使用 go 语言创建的内建命令

4. docker compose 是使用python 语言构建的第三方命令

5. docker stack 是swarm mode的一部分, 即使是单机使用, 也需要一个 swarm 节点

6. docker stack 只能支持 version3 以上版本