Docker compose pour reverse proxy docker nginx + certbot
################################################
# Nginx : reverse-proxy, gère ports 80 et 443 #
################################################
nginx:
image: nginx:alpine
container_name: reverse-proxy
restart: always
ports:
- "80:80" # HTTP
- "443:443" # HTTPS
volumes:
# On utilise les certificats générés par Certbot
- certbot-etc:/etc/letsencrypt:ro
# Optionnel, si on fait la validation HTTP-01 via webroot
- certbot-www:/var/www/certbot:ro
# On monte notre configuration Nginx
- ./nginx/default.conf:/etc/nginx/conf.d/default.conf:ro
networks:
- proxy-tier
################################################
# Certbot : gère la génération/renouvellement #
################################################
certbot:
image: certbot/certbot:latest
container_name: certbot
# On le fait tourner en idle
#entrypoint: /bin/sh
#command:
# - -c
# - "trap : TERM INT; sleep 9999999999d"
networks:
- proxy-tier
volumes:
- certbot-etc:/etc/letsencrypt
- certbot-www:/var/www/certbot
networks:
proxy-tier:
external: true
name: proxy-tier
volumes:
certbot-etc: # Chemin sur l'hôte : /var/lib/docker/volumes/certbot-etc
certbot-www: # ...