exécuter une commande dans le panneau de l'essaim de service

  1. Initialiser essaim mode:
    root@ip-172-31-44-207:/home/ubuntu# docker swarm init --advertise-addr 172.31.44.207
    
    Swarm initialized: current node (4mj61oxcc8ulbwd7zedxnz6ce) is now a manager.
    
    To add a worker to this swarm, run the following command:
    
  2. Rejoindre le deuxième nœud:
    docker swarm join \
    --token SWMTKN-1-4xvddif3wf8tpzcg23tem3zlncth8460srbm7qtyx5qk3ton55-6g05kuek1jhs170d8fub83vs5 \
    172.31.44.207:2377
    

Pour ajouter un gestionnaire de cet essaim, exécutez "docker essaim rejoignez-token manager" et suivez les instructions.

# start 2 services
docker service create continuumio/miniconda3 

docker service create --name redis redis:3.0.6


root@ip-172-31-44-207:/home/ubuntu# docker service ls
ID            NAME        REPLICAS  IMAGE                   COMMAND
2yc1xjmita67  miniconda3  0/1       continuumio/miniconda3
c3ptcf2q9zv2  redis       1/1       redis:3.0.6

Comme indiqué ci-dessus, redis, il se réplique alors que miniconda ne pas semblent être répliqué.

Je fais d'habitude connectez-vous à miniconda conteneur de taper ces commandes:

/opt/conda/bin/conda install jupyter -y --quiet && mkdir /opt/notebooks && /opt/conda/bin/jupyter notebook --notebook-dir=/opt/notebooks --ip='*' --port=8888 --no-browser

Le problème est que docker exec -it XXX bash commande ne fonctionne pas avec l'essaim de mode.

Le 0 répliques signifie que le conteneur n'a pas pu démarrer. Je vous recommande de configurer un enregistrement du pilote (par exemple, pilote syslog) sur votre démon docker depuis par défaut, il avale toutes les sorties des conteneurs. C'est probablement le redémarrage maintes et maintes fois et vous voulez savoir pourquoi. Si c'est le cas, vous ne serez pas en mesure de s'attacher à elle et de le corriger; vous en aurez besoin pour fixer le panneau de commande de services au lieu de cela, afin de ne pas sortir avec une erreur.

OriginalL'auteur shantanuo | 2016-09-07