Outils pour utilisateurs

Outils du site


notes:docker_swarm

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
notes:docker_swarm [2025/03/05 12:23] – [Create a swarm] fraternotes:docker_swarm [2025/11/13 11:44] (Version actuelle) frater
Ligne 1: Ligne 1:
 ====== Docker Swarm ====== ====== Docker Swarm ======
 +
 +{{tag>debian docker experimentation notes}}
  
 ===== Install Docker ===== ===== Install Docker =====
 +
  
 [[https://docs.docker.com/engine/install/debian/|source]] [[https://docs.docker.com/engine/install/debian/|source]]
  
 ==== Install using the apt repository ==== ==== Install using the apt repository ====
 +
  
 Before you install Docker Engine for the first time on a new host machine, you need to set up the Docker apt repository. Afterward, you can install and update Docker from the repository. Before you install Docker Engine for the first time on a new host machine, you need to set up the Docker apt repository. Afterward, you can install and update Docker from the repository.
  
 ==== Set up Docker's apt repository. ==== ==== Set up Docker's apt repository. ====
 +
  
 To setup official's Docker repository, run (as ''root''): To setup official's Docker repository, run (as ''root''):
Ligne 38: Ligne 43:
 ===== Create a swarm ===== ===== Create a swarm =====
  
-After you complete the tutorial setup steps, you're ready to create a swarm. Make sure the Docker Engine daemon is started on the host machines. 
  
-Open a terminal and ssh into the machine where you want to run your manager node. This tutorial uses a machine named ''manager1''.+After you complete the setup steps, you're ready to create a swarm. Make sure the Docker Engine daemon is started on the host machines. 
 + 
 +Open a terminal and ssh into the machine where you want to run your manager node. This example we uses a machine named ''docker00''.
  
 Run the following command to create a new swarm: Run the following command to create a new swarm:
Ligne 51: Ligne 57:
  
 <cli> <cli>
-root@docker01:~# docker swarm init --advertise-addr 192.168.99.100+root@docker01:~# docker swarm init --advertise-addr 192.168.80.10
 Swarm initialized: current node (dxn1zf6l61qsb1josjja83ngz) is now a manager. Swarm initialized: current node (dxn1zf6l61qsb1josjja83ngz) is now a manager.
  
 To add a worker to this swarm, run the following command: To add a worker to this swarm, run the following command:
  
-    docker swarm join --token SWMTKN-1-2[snip]wlr 192.168.99.100:2377+    docker swarm join --token SWMTKN-1-2[snip]wlr 192.168.80.10:2377
  
-To add a manager to this swarm, run 'docker swarm join-token manager' and follow the instructions.+To add a manager to this swarm, run ''docker swarm join-token manager'' and follow the instructions.
 </cli> </cli>
  
-**take note of the token provided**+<WRAP center round important> 
 +Take note of the token provided 
 +</WRAP> 
 + 
 +==== Adding manager node ==== 
 + 
 + 
 +To add a manager to this swarm, run ''docker swarm join-token manager'' and follow the instructions. 
 + 
 +==== Adding worker node ====
  
 To add a worker to this swarm, run the following command: To add a worker to this swarm, run the following command:
Ligne 68: Ligne 83:
 root@docker01:~# docker swarm join \ root@docker01:~# docker swarm join \
     --token SWMTKN-1-2[snip]wlr \     --token SWMTKN-1-2[snip]wlr \
-    192.168.99.100:2377+    192.168.80.10:2377
 </cli> </cli>
  
-To add a manager to this swarm, run 'docker swarm join-token manager' and follow the instructions.+The ''--advertise-addr'' flag configures the manager node to publish its address as ''192.168.80.10''. The other nodes in the swarm must be able to access the manager at the IP address.
  
-The --advertise-addr flag configures the manager node to publish its address as 192.168.99.100. The other nodes in the swarm must be able to access the manager at the IP address.+The output includes the commands to join new nodes to the swarm. Nodes will join as managers or workers depending on the value for the ''--token'' flag.
  
-The output includes the commands to join new nodes to the swarm. Nodes will join as managers or workers depending on the value for the --token flag.+==== Validate the swarm status ====
  
-Run docker info to view the current state of the swarm:+Run ''docker info'' to view the current state of the swarm:
  
 <cli> <cli>
-root@docker01:~# docker info+root@docker00:~# docker info 
 +Client: Docker Engine - Community                                                                                                                                                              
 + Version:    28.0.1                                                                                                                                                                            
 + Context:    default                                                                                                                                                                           
 + Debug Mode: false                                                                                                                                                                             
 + Plugins: 
 +  buildx: Docker Buildx (Docker Inc.) 
 +    Version:  v0.21.1 
 +    Path:     /usr/libexec/docker/cli-plugins/docker-buildx 
 +  compose: Docker Compose (Docker Inc.) 
 +    Version:  v2.33.1 
 +    Path:     /usr/libexec/docker/cli-plugins/docker-compose
  
-Containers: 2 +Server: 
-Running: 0 + Containers: 6 
-Paused: 0 +  Running: 3 
-Stopped: 2+  Paused: 0 
 +  Stopped: 
 + Images:
 + Server Version: 28.0.1 
 + Storage Driver: overlay2 
 +  Backing Filesystem: extfs
   ...snip...   ...snip...
 Swarm: active Swarm: active
-  NodeID: dxn1zf6l61qsb1josjja83ngz+  NodeID: nh0izhq4pa2plmjdvy00f8um7
   Is Manager: true   Is Manager: true
 +  ClusterID: mbwi9gcqsueen8mcanvme3zc8
   Managers: 1   Managers: 1
-  Nodes: 1+  Nodes: 3
   ...snip...   ...snip...
 </cli> </cli>
  
-Run the docker node ls command to view information about nodes:+Run the ''docker node ls'' command to view information about nodes:
  
 <cli> <cli>
-root@docker01:~# docker node ls +root@docker00:~# docker node ls 
- +ID                            HOSTNAME       STATUS    AVAILABILITY   MANAGER STATUS   ENGINE VERSION 
-ID                           HOSTNAME  STATUS  AVAILABILITY  MANAGER STATUS +nh0izhq4pa2plmjdvy00f8um7 *   deb-docker00   Ready     Active         Leader           28.0.1 
-dxn1zf6l61qsb1josjja83ngz  manager1  Ready   Active        Leader+7m0t8hrymi0jlmy1jpf85tknt     deb-docker01   Ready     Active                          28.0.1 
 +tebmpkb8og8ko2jfa2zq0z5oc     deb-docker02   Ready     Active                          28.0.1
 </cli> </cli>
  
 The * next to the node ID indicates that you're currently connected on this node. The * next to the node ID indicates that you're currently connected on this node.
  
-Docker Engine Swarm mode automatically names the node with the machine host name. The tutorial covers other columns in later steps.+Docker Engine Swarm mode automatically names the node with the machine host name.
  
 +<WRAP center round info>
 +In my labs, I've setup 3 nodes, deb-docker00, deb-docker01, deb-docker02.
 +</WRAP>
notes/docker_swarm.1741173799.txt.gz · Dernière modification : de frater