Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
docker_advanced_install_swarm_intro [2020/03/09 11:00] – andonovj | docker_advanced_install_swarm_intro [2020/03/09 12:18] (current) – [Create service] andonovj | ||
---|---|---|---|
Line 18: | Line 18: | ||
* 2 Workers | * 2 Workers | ||
+ | ====Automatic==== | ||
+ | You can see the automatic creation in the Vagrant section: [[vagrant_docker_install|Multiple Servers Configuration with Vagrant]] | ||
- | You can see the creation in the Vagrant section: [[vagrant_docker_install|Multiple Servers Configuration with Vagrant]] | + | After the setup is done, please be sure that workers, have joined, we can create |
+ | ====Manual==== | ||
+ | The creation of the VMs and installation of docker-ce will not be discussed as it has been done in at least 10 other sections. | ||
+ | So let's check how to setup manager and 2 workers: | ||
- | After the setup is done, please | + | ===Initiation=== |
+ | The initiation of the Swarm is done from one of the managers as follow: | ||
+ | < | ||
+ | docker swarm init --listen-addr 10.100.199.200: | ||
+ | </ | ||
+ | |||
+ | That command will initialize a swarm with 1 manager who will listen on IP: 10.100.199.200: | ||
+ | |||
+ | ===Addition=== | ||
+ | To join a swarm a server must have the swarm' | ||
+ | |||
+ | < | ||
+ | [root@mgr1 ~]# docker swarm join-token manager | ||
+ | To add a manager to this swarm, run the following command: | ||
+ | |||
+ | docker swarm join --token SWMTKN-1-4mqe4htimsl9wrlzstzx6c18qmibjfjuuihdp3o91pnmssbvml-69b13glzhdgfzh58hbg7jwn69 10.100.199.200: | ||
+ | |||
+ | [root@mgr1 ~]# docker swarm join-token worker | ||
+ | To add a worker to this swarm, run the following command: | ||
+ | |||
+ | docker swarm join --token SWMTKN-1-4mqe4htimsl9wrlzstzx6c18qmibjfjuuihdp3o91pnmssbvml-1h1yrqixgrme7aypq6c4m0npj 10.100.199.200: | ||
+ | |||
+ | [root@mgr1 ~]# | ||
+ | |||
+ | </ | ||
+ | |||
+ | Now, it is good idea to ALWAYS add the advertise and listener address to the server: | ||
+ | |||
+ | Manually, workers and manager | ||
+ | |||
+ | < | ||
+ | docker swarm join --token SWMTKN-1-4mqe4htimsl9wrlzstzx6c18qmibjfjuuihdp3o91pnmssbvml-1h1yrqixgrme7aypq6c4m0npj \ | ||
+ | manager_advertise_ip: | ||
+ | --advertise-addr worker_advert_ip_addr: | ||
+ | --listener-addr worker_listen_ip_addr: | ||
+ | </ | ||
+ | |||
+ | Insert the correct token depending on, if you are adding worker or a manager. The above is for worker. | ||
=====Create service===== | =====Create service===== | ||
Line 28: | Line 70: | ||
<sxh bash> | <sxh bash> | ||
- | [root@mgr1 ~]# docker service create --name httpDemoService --replicas 3 andonovj/ | + | [root@mgr1 ~]# docker service create --name httpDemoService --replicas 3 -p 80: |
- | q8s7iiv4rwu7pymf2qnelglgx | + | nz82mserbonjcoccp7iir7hfn |
overall progress: 3 out of 3 tasks | overall progress: 3 out of 3 tasks | ||
1/3: running | 1/3: running | ||
Line 48: | Line 90: | ||
sdcosdbt1f94rrvbr8m9ng30s | sdcosdbt1f94rrvbr8m9ng30s | ||
[root@mgr1 ~]# | [root@mgr1 ~]# | ||
+ | [root@mgr1 ~]# docker service ps httpDemoService | ||
+ | ID NAME IMAGE NODE DESIRED STATE | ||
+ | avcanadogs3e | ||
+ | 6pgfba2xdg0q | ||
+ | me2174rye7nu | ||
+ | [root@mgr1 ~]# | ||
+ | |||
</ | </ | ||