Ce que j'essaie de faire, c'est que le gestionnaire de docker et les dockers aient un jeton présélectionné qu'ils peuvent utiliser, donc je n'ai pas besoin de docker ssh
et d'exécuter d'autres commandes. La documentation semble prendre en charge ce processus avec le drapeau --swarm-discovery avec un jeton.
docker run swarm create
Utilisez ce jeton ci-dessous dans la commande suivante :
docker-machine create --swarm-master --swarm --driver virtualbox --swarm-discovery token://b4e72945cb52c1324REDACTED manager2
docker-machine ssh
mais lorsque j'exécute docker node ls
il est dit "Ce nœud n'est pas un gestionnaire d'essaims. Utilisez "docker swarm init" ou "docker swarm join" pour connecter ce nœud à swarm et réessayez.' puis je dois exécuter docker swarm init./swarm manage --tlsverify --tlscacert=/var/lib/boot2docker/ca.pem --tlscert=/var/lib/boot2docker/server.pem --tlskey=/var/lib/boot2docker/server-key.pem -H tcp://0.0.0.0:3376 --strategy spread --advertise 192.168.99.100:3376 token://b4e72945cb52c1324REDACTED
docker-machine create --swarm --driver virtualbox --swarm-discovery "token://b4e72945cb52c1324REDACTED" worker1
en ce sens qu'il ne rejoint pas automatiquement l'essaim... Je dois ssh et exécuter docker join.Ainsi, je ne vois pas l'intérêt du drapeau --swarm-discovery en utilisant le protocole de jeton.
$ docker -v
Docker version 1.12.1, build 6f9534c
$ docker-machine -v
docker-machine version 0.8.1, build 41b3b25
@ahmetalpbalkan - Je pense que c'est peut-être une solution à un problème différent ?
@pc-mreeves ouais mon erreur
Vous mélangez "classic swarm" (https://github.com/docker/swarm) et "swarm mode" (introduit dans 1.12 et intégré au moteur).
Pour utiliser "classic swarm", vous faites eval $(docker-machine env --swarm manager)
. Si vous souhaitez utiliser les nouvelles fonctionnalités du mode essaim, vous devez exécuter vous-même les commandes init
et join
sur les nœuds vbox -- merci
@nathanleclaire Il m'a fallu beaucoup de temps pour découvrir comment configurer un mode essaim en utilisant docker-machine. Cela ne semble pas nécessaire car le nouveau mode est assez simple grâce à votre commentaire.
Commentaire le plus utile
Vous mélangez "classic swarm" (https://github.com/docker/swarm) et "swarm mode" (introduit dans 1.12 et intégré au moteur).
Pour utiliser "classic swarm", vous faites
eval $(docker-machine env --swarm manager)
. Si vous souhaitez utiliser les nouvelles fonctionnalités du mode essaim, vous devez exécuter vous-même les commandesinit
etjoin
sur les nœuds vbox -- merci