Serveur REST Restic utilisant docker-compose avec Traefik comme proxy inverse
Posts associés :
- Configuration simple Traefik docker-compose avec les challenges Lets Encrypt Cloudflare DNS-01, TLS-ALPN-01 et HTTP-01 - comment configurer Traefik avec le challenge Cloudflare DNS-01 pour les certificats Let’s Encrypt
docker-compose-restic.yml
services:
restic:
image: restic/rest-server:latest
container_name: restic-rest-server
restart: unless-stopped
volumes:
- ./restic_data:/data
environment:
- DATA_DIRECTORY=/data
- PASSWORD_FILE=/data/.htpasswd
labels:
- "traefik.enable=true"
- "traefik.http.routers.restic.rule=Host(`restic.mydomain.com`)"
- "traefik.http.routers.restic.entrypoints=websecure"
- "traefik.http.routers.restic.tls.certresolver=cloudflare-ec384"
- "traefik.http.routers.restic.tls.domains[0].main=mydomain.com"
- "traefik.http.routers.restic.tls.domains[0].sans=*.mydomain.com"
- "traefik.http.services.restic.loadbalancer.server.port=8000"Vous avez seulement besoin de créer le fichier d’identifiants utilisateur avec la commande suivante :
create_htpasswd.sh
touch restic_data/.htpasswd
docker-compose exec restic create_user myuser Koh3iebaiyeesho4aexu4shee8heizTypiquement, vous voulez activer le démarrage automatique, voir Créer un service systemd pour votre projet docker-compose en 10 secondes pour plus de détails.
TL;DR :
create_docker_compose_service.sh
curl -fsSL https://techoverflow.net/scripts/create-docker-compose-service.sh | sudo bash /dev/stdinOptionnellement, vous pouvez ajouter des options de ligne de commande à la section environment: :
docker-compose-restic-options.yml
environment:
- OPTIONS=--append-only --private-reposmais je considère que cela est réservé aux utilisateurs avancés uniquement. Les options par défaut sont suffisantes pour la plupart des cas d’utilisation.
If this post helped you, please consider buying me a coffee or donating via PayPal to support research & publishing of new posts on TechOverflow