2016-11-07 7 views
0

Я следовал за docker swarm instructions и прийти к «Launch менеджер Swarm» раздел, где я сказал, чтобы выдать эту команду:Docker роя создают разницу команды

docker-machine create -d virtualbox --swarm --swarm-master --swarm-discovery token://2144765674e460fbd53cf4bfcfb59207 swarm-master

Может кто-то объяснить разницу между этим может команда create я опубликовал ранее:

docker-machine create -d virtualbox local

в обоих случаях вы, кажется, создавать что-то на VirtualBox - это что на Вы делаете раба, а другого - мастером?

ответ

1

Первая команда создает новую виртуальную виртуальную машину. Затем вам нужно запустить команду docker run swarm create, чтобы сгенерировать токен обнаружения с помощью централизованного размещения Docker в службе Swarm Discovery. Остальные узлы (включая менеджера) связаны вместе с этим уникальным токеном.

Вторая команда на самом деле создает машину менеджера Swarm. Первая машина (local) на самом деле ничего не делает (за исключением запуска контейнера для создания токена) iirc, поэтому после ее создания и сохранения можно, вероятно, убить эту машину. Также нет причин, по которым вы не могли бы просто генерировать это (используя docker run swarm create) на локальной установке Docker (если таковая имеется) и вообще пропустить создание виртуальной машины local.

Также, вероятно, стоит упомянуть, что это «старый» способ создания клана Docker Swarm. Если вы придете к этой «свежей», то «лучшей практикой» является использование режима Docker Swarm (версия двигателя 1.12 и выше). Натурально интегрирован с двигателем и с меньшими сложностями/внешними зависимостями.

Дополнительная информация о Docker Swarm Mode here и ответ на SO (мной) explaining the differences here.