Caddy en reverse proxy
Un des principaux intérêts de Docker, c'est de pouvoir déployer des services divers dans des containers séparés, et d'exposer ces services à l'extérieur. Souvent ces services seront des services web, qu'on devra faire passer par un port d'écoute unique au serveur qui les accueille, c'est là que le reverse proxy intervient, en aiguillant chaque requête entrante vers le bon service en fonction du domaine, principalement.
Installation
Docker est installé sur notre serveur, créons maintenant un répertoire "/opt/caddy", avec deux sous-dossiers "data" et "config" :
On ajoutera au dossier "caddy" deux fichiers, d'abord le fichier "docker-compose.yml" suivant :
services: caddy: container_name: caddy image: caddy:latest restart: unless-stopped ports: - "80:80" - "443:443" - "443:443/udp" volumes: - ./Caddyfile:/etc/caddy/Caddyfile - ./data:/data/caddy - ./config:/config/caddy
Je ne vais pas détailler ici le fonctionnement d'un Docker Compose, disons simplement que ce fichier de configuration charge l'image prédéfinie officielle de Caddy depuis le site hub.docker.com, expose les ports http et https pour recevoir les requêtes web du monde extérieur, et qu'on mappe deux répertoires locaux à des chemins internes du futur container, ainsi qu'un fichier de configuration de Caddy lui-même, le Caddyfile.
On a maintenant :
Avec le contenu de départ suivant pour le Caddyfile :
{ email admin@riffzone.net }
> <