Aller au contenu principal

Client en conteneur

Le client lionbackup est aussi disponible sous forme d'image de conteneur officielle — construite à partir du même code open source et publiée dans notre propre registre. Le pull est anonyme et public ; aucun compte n'est nécessaire.

Récupération

docker pull git.lionbackup.cloud/lionbackup/lionbackup-client:latest

Tags disponibles : latest (build courant), X.Y.Z (version figée, recommandée en production) et le hash de commit de chaque build.

Remarque : le pull public est limité à 300 requêtes par minute et par IP (un docker pull nécessite environ 15–20 requêtes) — largement suffisant pour la CI et les pulls parallèles.

Propriétés de l'image

  • Minimale (FROM scratch) : pas de shell, pas de gestionnaire de paquets, pas de bibliothèques système — uniquement le binaire statique du client, les certificats CA et les données de fuseaux horaires.
  • Nonroot : s'exécute avec un utilisateur non privilégié (UID 65532).
  • Chiffrement de bout en bout : avec le chiffrement E2E activé, seul du texte chiffré quitte le conteneur.

Exécution

Le répertoire de travail dans le conteneur est /data — le client y attend son lionbackup.yaml (et le cas échéant l'identité age). Les données à sauvegarder sont montées en lecture seule :

docker run --rm \
-v /srv/lionbackup:/data \
-v /daten/projekt:/backup:ro \
git.lionbackup.cloud/lionbackup/lionbackup-client:0.1.1 backup

Les chemins de lionbackup.yaml se réfèrent à la vue dans le conteneur (p. ex. /backup).

Docker Compose

services:
lionbackup:
image: git.lionbackup.cloud/lionbackup/lionbackup-client:0.1.1
volumes:
- /srv/lionbackup:/data # lionbackup.yaml + age-Identity
- /daten/projekt:/backup:ro # zu sichernde Daten (read-only)
command: ["backup"]

Recommandations

  • Figer la version (:X.Y.Z plutôt que :latest) pour des environnements reproductibles.
  • Monter les données sources en lecture seule (:ro) — le client n'écrit jamais dans les sources.
  • Planification via les mécanismes de votre plateforme : cron, timers systemd ou un CronJob Kubernetes.
  • Configuration et premiers pas : voir Premiers pas.