61 lines
1.4 KiB
YAML
61 lines
1.4 KiB
YAML
|
|
---
|
||
|
|
# Edge Traefik Installation Tasks
|
||
|
|
# Sets up Traefik as edge reverse proxy for private network clients
|
||
|
|
|
||
|
|
- name: Ensure Traefik configuration directory exists
|
||
|
|
file:
|
||
|
|
path: /opt/docker/traefik
|
||
|
|
state: directory
|
||
|
|
mode: '0755'
|
||
|
|
tags: [traefik, edge]
|
||
|
|
|
||
|
|
- name: Create Let's Encrypt storage directory
|
||
|
|
file:
|
||
|
|
path: /opt/docker/traefik/letsencrypt
|
||
|
|
state: directory
|
||
|
|
mode: '0600'
|
||
|
|
tags: [traefik, edge]
|
||
|
|
|
||
|
|
- name: Create Traefik log directory
|
||
|
|
file:
|
||
|
|
path: /var/log/traefik
|
||
|
|
state: directory
|
||
|
|
mode: '0755'
|
||
|
|
tags: [traefik, edge]
|
||
|
|
|
||
|
|
- name: Deploy Traefik static configuration
|
||
|
|
template:
|
||
|
|
src: traefik.yml.j2
|
||
|
|
dest: /opt/docker/traefik/traefik.yml
|
||
|
|
mode: '0644'
|
||
|
|
notify: Restart Traefik
|
||
|
|
tags: [traefik, edge, config]
|
||
|
|
|
||
|
|
- name: Deploy Traefik dynamic configuration (routing rules)
|
||
|
|
template:
|
||
|
|
src: dynamic.yml.j2
|
||
|
|
dest: /opt/docker/traefik/dynamic.yml
|
||
|
|
mode: '0644'
|
||
|
|
notify: Restart Traefik
|
||
|
|
tags: [traefik, edge, config]
|
||
|
|
|
||
|
|
- name: Deploy Traefik Docker Compose file
|
||
|
|
template:
|
||
|
|
src: docker-compose.yml.j2
|
||
|
|
dest: /opt/docker/traefik/docker-compose.yml
|
||
|
|
mode: '0644'
|
||
|
|
tags: [traefik, edge]
|
||
|
|
|
||
|
|
- name: Start Traefik container
|
||
|
|
community.docker.docker_compose_v2:
|
||
|
|
project_src: /opt/docker/traefik
|
||
|
|
state: present
|
||
|
|
tags: [traefik, edge]
|
||
|
|
|
||
|
|
- name: Wait for Traefik to be ready
|
||
|
|
wait_for:
|
||
|
|
port: 443
|
||
|
|
delay: 5
|
||
|
|
timeout: 60
|
||
|
|
tags: [traefik, edge]
|