2024-11-12 12:05:12 +01:00
|
|
|
Role : docker_traefik
|
|
|
|
=====================
|
|
|
|
|
|
|
|
Configure un conteneur traefik sur un serveur préparé avec docker_host prêt à servir de reverse proxy local pour les applications web.
|
|
|
|
|
|
|
|
|
|
|
|
Prérequis et dépendances
|
|
|
|
------------------------
|
|
|
|
|
|
|
|
- Rôle : docker_host
|
|
|
|
|
|
|
|
|
|
|
|
Variables
|
|
|
|
---------
|
|
|
|
|
|
|
|
Le rôle nécessite que soit fourni le paramètre suivant :
|
|
|
|
|
|
|
|
```yaml
|
|
|
|
# Chaine user + mdp chiffré pour l'accès à l'interface de traefik sur le port 8443
|
|
|
|
docker_traefik_admin: "admin:$$apr1$$HWiac5ae$$fBaMfNze1G96R2d5ntiID/"
|
|
|
|
```
|
|
|
|
|
|
|
|
Les autres variables utilisables sont précisées ci-dessous (cf. defaults/main.yml) :
|
|
|
|
|
|
|
|
```yaml
|
|
|
|
# Liste des reverse proxy de confiance pour traefik, pour la récupération des entêtes http
|
|
|
|
docker_traefik_trusted_ips: []
|
|
|
|
# Chemin d'installation
|
|
|
|
docker_traefik_install_dir: /opt/traefik/
|
|
|
|
# Interface d'écoute pour les flux entrants
|
|
|
|
docker_traefik_listen_ip: "0.0.0.0"
|
|
|
|
# Interface d'écoute pour l'administration de traefik
|
|
|
|
docker_traefik_admin_listen_ip: "{{ docker_traefik_listen_ip }}"
|
|
|
|
# Port d'écoute pour les flux http
|
|
|
|
docker_traefik_web_port: 80
|
|
|
|
# Port d'écoute pour les flux https
|
|
|
|
docker_traefik_websecure_port: 443
|
|
|
|
# Port d'écoute pour l'interface d'administration'
|
|
|
|
docker_traefik_admin_port: 8443
|
|
|
|
```
|
|
|
|
|
|
|
|
Par exemple :
|
|
|
|
```yaml
|
2024-11-12 12:21:27 +01:00
|
|
|
docker_traefik_admin: "admin:$$apr1$$HWiac5ae$$fBaMfNze1G96R2d5ntiID/"
|
|
|
|
docker_traefik_trusted_ips: [ 10.1.2.3 ]
|
2024-11-12 12:05:12 +01:00
|
|
|
```
|
|
|
|
|
|
|
|
A noter : la valeur de docker_host_traefik_admin pour un compte d'accès "admin" avec mot de passe "4dm1n" s'obtient par :
|
|
|
|
```sh
|
|
|
|
echo $(htpasswd -nb admin 4dm1n) | sed -e s/\\$/\\$\\$/g
|
|
|
|
```
|
|
|
|
|
|
|
|
Exemple de Playbook
|
|
|
|
-------------------
|
|
|
|
|
|
|
|
Le rôle peut s'utiliser sans paramètre particulier sur un serveur préparé avec docker_host.
|
|
|
|
|
|
|
|
```yaml
|
|
|
|
- hosts: servers
|
|
|
|
vars:
|
2024-11-12 12:21:27 +01:00
|
|
|
docker_traefik_admin: "admin:$$apr1$$HWiac5ae$$fBaMfNze1G96R2d5ntiID/"
|
2024-11-12 12:05:12 +01:00
|
|
|
|
|
|
|
roles:
|
|
|
|
- docker_host
|
|
|
|
- docker_traefik
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
License
|
|
|
|
-------
|
|
|
|
|
|
|
|
MIT
|