创建Docker群的方式不同

时间:2017-01-19 17:50:39

标签: docker docker-swarm

过去3天我一直在阅读很多关于" new"的文章和文档。最近在其引擎内构建了docker swarm。

确定了几种创建群组的方式(无论是本地群组还是云群提供者),我无法帮助理解这些方法之间的差异以及何时“ d使用一个而不是另一个。

到目前为止,我已经确定了创建swarm的方法:

方法1

docker-machine create -d virtualbox swarm-manager
docker-machine create -d virtualbox swarm-worker-1
docker-machine create -d virtualbox swarm-worker-2

manager_ip=$(docker-machine ip swarm-manager)
swarm_join_command="docker swarm join --token SWMTKN-1-49nj1cmql0jkz5s954yi3oex3nedyz0fb0xx14ie39trti4wxv-8vxv8rssmk743ojnwacrr2e7c 192.168.99.100:2377"

docker-machine ssh swarm-manager "docker swarm init --advertise-addr $manager_ip"

docker-machine ssh swarm-worker-1 "${swarm_join_command}"
docker-machine ssh swarm-worker-2 "${swarm_join_command}"

方法2

docker-machine create -d virtualbox token

token=$(docker-machine ssh token "docker run swarm create" | tail -n 1)

docker-machine create -d virtualbox \
--swarm --swarm-master \
--swarm-discovery token://${token} \
master-node

docker-machine create -d virtualbox \
--swarm --swarm-discovery token://${token} \
node-01

我排除了领事,因为似乎不再需要了。

  1. 这些方法有什么区别?
  2. 我应该何时使用另一个?

1 个答案:

答案 0 :(得分:2)

令人困惑的是Docker Swarm有两种实现方式。第一个作为容器运行,第二个作为v1.12版本的一部分集成到docker Engine中。

所以包含方法1.以下示例使用多个管理器创建HA设置:

older Swarm documentation包含以下内容:

  

您正在查看旧版独立Swarm的文档。这些主题   描述独立的Docker Swarm。如果您使用Docker 1.12或更高版本,   Swarm模式与Docker Engine集成在一起。大多数用户应该使用   集成Swarm模式 - 一个好的起点是入门   swarm模式和Swarm模式CLI命令。独立的Docker Swarm不是   集成到Docker Engine API和CLI命令中。