mirror of
https://gitlab.sectorq.eu/jaydee/ansible.git
synced 2025-12-14 01:54:56 +01:00
This commit is contained in:
29
roles/docker_swarm/tasks/main.yml
Executable file
29
roles/docker_swarm/tasks/main.yml
Executable file
@@ -0,0 +1,29 @@
|
||||
- name: Setup docker
|
||||
become: "{{ false if inventory_hostname == 'nas.home.lan' else true }}"
|
||||
collections:
|
||||
- community.docker
|
||||
block:
|
||||
- name: Facts
|
||||
ansible.builtin.setup:
|
||||
- name: Install Docker SDK for Python
|
||||
pip:
|
||||
name: docker>=5.0.0
|
||||
executable: pip3
|
||||
break_system_packages: true
|
||||
- name: Initialize swarm
|
||||
docker_swarm:
|
||||
state: present
|
||||
listen_addr: "{{ ansible_default_ipv4.address }}:2377"
|
||||
register: swarm_init
|
||||
when: inventory_hostname == "vm01.home.lan"
|
||||
|
||||
- name: Show join tokens
|
||||
ansible.builtin.debug:
|
||||
msg:
|
||||
- "Manager join token: {{ swarm_init.swarm_facts['JoinTokens']['Manager'] }}"
|
||||
- "Worker join token: {{ swarm_init.swarm_facts['JoinTokens']['Worker'] }}"
|
||||
when: inventory_hostname == "vm01.home.lan"
|
||||
|
||||
- name: Join swarm as worker
|
||||
shell: docker swarm join --token {{ hostvars['vm01.home.lan']['swarm_init'].swarm_facts['JoinTokens']['Worker'] }} {{ hostvars['vm01.home.lan']['ansible_default_ipv4']['address'] }}:2377
|
||||
when: inventory_hostname != "vm01.home.lan"
|
||||
Reference in New Issue
Block a user