iac_stack/ansible/roles/deploy_container_traefik/tasks/main.yml
2025-07-15 00:11:39 +02:00

57 lines
1.5 KiB
YAML

---
- name: Ensure data directories exist
ansible.builtin.file:
path: "{{ traefik_container_dir }}/data/{{ item }}"
state: directory
mode: '0755'
loop:
- "traefik"
- "certs"
- "logs"
- "traefik/config.d"
become: false
- name: Ensure log files exist
ansible.builtin.file:
path: "{{ traefik_container_dir }}/data/logs/{{ item }}"
state: touch
mode: '0644'
loop:
- "traefik.log"
- "access.log"
become: false
- name: Deploy Traefik configuration files
ansible.builtin.template:
src: "{{ item.src }}"
dest: "{{ traefik_container_dir }}/data/{{ item.dest }}"
mode: '0644'
loop:
- { src: 'traefik.yml.j2', dest: 'traefik/traefik.yml' }
- { src: 'default.yml.j2', dest: 'traefik/config.d/default.yml' }
- { src: 'hosts.yml.j2', dest: 'traefik/config.d/hosts.yml' }
become: false
- name: Deploy Docker Compose and .env files
ansible.builtin.template:
src: "{{ item.src }}"
dest: "{{ traefik_container_dir }}/{{ item.dest }}"
mode: '0644'
loop:
- { src: 'docker-compose.yml.j2', dest: 'docker-compose.yml' }
- { src: '.env.j2', dest: '.env' }
become: false
- name: Ensure Docker network exists
community.docker.docker_network:
name: traefik
state: present
docker_host: "unix:///run/user/1000/docker.sock"
become: false
- name: Start Traefik container
community.docker.docker_compose_v2:
project_src: "{{ traefik_container_dir }}"
pull: always
docker_host: "unix:///run/user/1000/docker.sock"
become: false