--- - name: Create Traefik directories ansible.builtin.file: path: "{{ item }}" state: directory owner: root group: root mode: "0755" loop: - "{{ traefik_dir }}" - "{{ traefik_dir }}/data" - "{{ traefik_dynamic_dir }}" tags: [traefik] - name: Create proxy network community.docker.docker_network: name: "{{ traefik_network }}" state: present tags: [traefik, docker] - name: Render Traefik static config ansible.builtin.template: src: traefik.yml.j2 dest: "{{ traefik_dir }}/traefik.yml" owner: root group: root mode: "0644" notify: restart traefik tags: [traefik, config] - name: Render Traefik dynamic HTTP config ansible.builtin.template: src: dynamic-http.yml.j2 dest: "{{ traefik_dynamic_config_file }}" owner: root group: root mode: "0644" when: traefik_file_provider_enabled | bool notify: restart traefik tags: [traefik, config] - name: Deploy Traefik Compose project ansible.builtin.include_role: name: compose_project vars: compose_project_dir: "{{ traefik_dir }}" compose_project_directories: - "{{ traefik_dir }}" - "{{ traefik_dir }}/data" - "{{ traefik_dynamic_dir }}" compose_project_env_template_src: "{{ playbook_dir }}/../roles/traefik/templates/env.j2" compose_project_compose_template_src: "{{ playbook_dir }}/../roles/traefik/templates/compose.yaml.j2" compose_project_override_template_src: "{{ playbook_dir }}/../roles/traefik/templates/compose.override.yaml.j2" compose_project_create_proxy_network: true compose_project_proxy_network: "{{ traefik_network }}" compose_project_firewall_ports: "{{ traefik_tcp_ports }}" compose_project_firewall_enabled: "{{ traefik_publish_entrypoints | bool }}" tags: [traefik]