--- - hosts: all become: yes vars_files: - vars/services.yml - vars/environment.yml roles: - geerlingguy.docker - geerlingguy.pip tasks: - name: "Add '{{ ansible_user }}' to docker group" user: user: "{{ ansible_user }}" groups: docker append: yes - name: Init a new swarm with default parameters community.docker.docker_swarm: state: present advertise_addr: "{{ swarm_addr|default(omit) }}" - name: Init docker network for ingress community.docker.docker_network: name: traefik scope: swarm driver: overlay - name: Deploy services include_tasks: tasks/deploy.yml vars: service: "{{ item }}" loop: "{{ services }}"