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 docker_traefik_admin: "admin:$$apr1$$HWiac5ae$$fBaMfNze1G96R2d5ntiID/" docker_traefik_trusted_ips: [ 10.1.2.3 ] ``` 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: docker_traefik_admin: "admin:$$apr1$$HWiac5ae$$fBaMfNze1G96R2d5ntiID/" roles: - docker_host - docker_traefik ``` License ------- MIT