inhumantsar.dockerautoproxy

dockerautoproxy

Qu'est-ce que c'est ?

Utilise l'image Docker jwilder/nginx-proxy pour automatiser la configuration de proxy inverse dans Docker Swarm.

Comment ça fonctionne ?

Utilisation du rôle

L'image est conçue pour se configurer dynamiquement, donc il n'y a pas grand-chose à faire à l'avance. Consultez defaults/main.yml.

L'image alpine est utilisée par défaut, changez nginx_version en latest pour utiliser une image basée sur debian:jesse.

Crée un réseau appelé nginx_proxy_net auquel vos conteneurs proxy doivent se joindre.

Utilisation du proxy Nginx

Les conteneurs qui ont besoin d'être proxy doivent faire deux choses : exposer le port à proxifier et spécifier un hôte virtuel.

Les ports peuvent être spécifiés dans le Dockerfile avec EXPOSE, en ligne de commande avec --expose, ou dans le fichier Docker Compose avec expose.

Les hôtes virtuels doivent être spécifiés dans une variable d'environnement appelée VIRTUAL_HOST.

Utilisation avancée

Configurations Nginx personnalisées

Peuvent être chargées en montant un chemin sur l'hôte contenant des fichiers de configuration Nginx en utilisant la variable dockerautoproxy_config_path. Le chemin sera créé s'il n'existe pas déjà sur l'hôte.

Certificats SSL

Les certificats SSL peuvent être générés automatiquement ou spécifiés manuellement. Par défaut, ils sont stockés dans un volume de données partagé entre les conteneurs. Vous pouvez utiliser dockerautoproxy_certs_path pour monter un chemin sur l'hôte où les stocker.

Pour générer des certificats automatiquement, définissez la variable Ansible dockerautoproxy_ssl_companion sur true. Cela lancera un deuxième conteneur qui s'occupera de la génération de certificats SSL avec Let's Encrypt. Pour activer un service pour cela, définissez les variables d'environnement du conteneur LETSENCRYPT_HOST et LETSENCRYPT_EMAIL. Par exemple :

$ docker run -d \
    --name example-app \
    -e "VIRTUAL_HOST=example.com,www.example.com,mail.example.com" \
    -e "LETSENCRYPT_HOST=example.com,www.example.com,mail.example.com" \
    -e "[email protected]" \
    tutum/apache-php
À propos du projet

Sets up a dynamic Nginx reverse proxy on Docker Swarm

Installer
ansible-galaxy install inhumantsar.dockerautoproxy
Licence
bsd-3-clause
Téléchargements
103
Propriétaire