Guide d'Installation
L'application peut être déployée à l'aide de Docker, Portainer Stacks, ou Podman. Après l'installation, vous souhaiterez peut-être configurer le fuseau horaire, comme décrit dans la section Configurer le fuseau horaire et vous devez configurer les serveurs Duplicati pour envoyer les journaux de sauvegarde à duplistatus, comme indiqué dans la section Configuration Duplicati.
Conditions préalables
Assurez-vous que vous avez les éléments suivants installés :
- Docker Engine - Guide d'installation Debian
- Docker Compose - Guide d'installation Linux
- Portainer (optionnel) - Guide d'installation Docker
- Podman (optionnel) - Guide d'installation
Authentification
duplistatus depuis la version 0.9.x nécessite une authentification utilisateur. Un compte admin par défaut est créé automatiquement lors de la première installation de l'application ou lors de la mise à niveau à partir d'une version antérieure :
- Nom d'utilisateur :
admin - Mot de passe :
Duplistatus09
Vous pouvez créer des comptes utilisateurs supplémentaires dans Paramètres > Utilisateurs après la première connexion.
Le système applique une longueur minimale et une complexité du mot de passe. Ces exigences peuvent être ajustées à l'aide des variables d'environnement PWD_ENFORCE et PWD_MIN_LEN environment variables. L'utilisation d'un mot de passe sans complexité suffisante ou avec une longueur courte peut compromettre la sécurité. Veuillez utiliser ces paramètres avec prudence.
Images de conteneur
Vous pouvez utiliser les images de :
- Docker Hub :
docker.io/wsjbr/duplistatus:latest - GitHub Container Registry :
ghcr.io/wsj-br/duplistatus:latest
Option 1 : Utiliser Docker Compose
Ceci est la méthode recommandée pour les déploiements locaux ou lorsque vous souhaitez personnaliser la configuration. Elle utilise un fichier docker compose pour définir et exécuter le conteneur avec tous ses paramètres.
# download the compose file
wget https://github.com/wsj-br/duplistatus/raw/refs/heads/master/production.yml -O duplistatus.yml
# start the container
docker compose -f duplistatus.yml up -d
Consultez la section Fuseau horaire pour plus de détails sur la façon d'ajuster le fuseau horaire et le format des nombres/dates/heures.
Option 2 : Utilisation des Stacks Portainer (Docker Compose)
- Allez à « Stacks » dans votre serveur Portainer et cliquez sur « Ajouter stack ».
- Nommez votre stack (par exemple, « duplistatus »).
- Choisissez « Build method » comme « Web editor ».
- Copiez et collez ceci dans l'éditeur web :
# duplistatus production compose.yml
services:
duplistatus:
image: ghcr.io/wsj-br/duplistatus:latest
container_name: duplistatus
restart: unless-stopped
environment:
- TZ=Europe/London
- PWD_ENFORCE=true
- PWD_MIN_LEN=8
ports:
- "9666:9666"
volumes:
- duplistatus_data:/app/data
networks:
- duplistatus_network
networks:
duplistatus_network:
driver: bridge
volumes:
duplistatus_data:
name: duplistatus_data
- Consultez la section Fuseau horaire pour plus de détails sur la façon d'ajuster le fuseau horaire et le format des nombres/dates/heures.
- Cliquez sur « Déployer la pile ».
Option 3 : Utilisation des piles Portainer (référentiel GitHub)
- Dans Portainer, accédez à « Piles » et cliquez sur « Ajouter une pile ».
- Nommez votre pile (par exemple, « duplistatus »).
- Choisissez « Méthode de construction » comme « Dépôt ».
- Entrez l'URL du dépôt :
https://github.com/wsj-br/duplistatus.git - Dans le champ « Chemin du compose », entrez :
production.yml - (optionnel) Définissez les variables d'environnement
TZ,LANG,PWD_ENFORCEetPWD_MIN_LENdans la section « Variables d'environnement ». Consultez la section Fuseau horaire pour plus de détails sur la façon d'ajuster le fuseau horaire et le format des nombres/dates/heures. - Cliquez sur « Déployer la pile ».
Option 4 : Utilisation de Docker CLI
# Create the volume
docker volume create duplistatus_data
# Start the container
docker run -d \
--name duplistatus \
-p 9666:9666 \
-e TZ=Europe/London \
-e LANG=en_GB \
-v duplistatus_data:/app/data \
ghcr.io/wsj-br/duplistatus:latest
- Le volume
duplistatus_dataest utilisé pour le stockage persistant. L'image de conteneur utiliseEurope/Londoncomme fuseau horaire par défaut eten_GBcomme langue par défaut.
Option 5 : Utilisation de Podman (CLI) rootless
Pour les configurations de base, vous pouvez démarrer le conteneur sans configuration DNS :
mkdir -p ~/duplistatus_data
# Start the container (standalone)
podman run -d \
--name duplistatus \
--userns=keep-id \
-e TZ=Europe/London \
-e LANG=en_GB \
-p 9666:9666 \
-v ~/duplistatus_data:/app/data \
ghcr.io/wsj-br/duplistatus:latest
Configuration de DNS pour les conteneurs Podman
Si vous avez besoin d'une configuration DNS personnalisée (par exemple, pour Tailscale MagicDNS, les réseaux d'entreprise ou les configurations DNS personnalisées), vous pouvez configurer manuellement les serveurs DNS et les domaines de recherche.
Trouver votre configuration DNS :
-
Pour les systèmes systemd-resolved (la plupart des distributions Linux modernes) :
# Get DNS servers
resolvectl status | grep "DNS Servers:" | awk '{print "--dns " $3}'
# Get DNS search domains
resolvectl status | grep "DNS Domain:" | awk '{print "--dns-search " $3}' -
Pour les systèmes non-systemd ou en secours :
cat /run/systemd/resolve/resolv.conf 2>/dev/null || cat /etc/resolv.conf
Recherchez les lignes commençant par nameserver (pour les serveurs DNS) et search (pour les domaines de recherche). Si vous n'êtes pas sûr de vos paramètres DNS ou de vos domaines de recherche réseau, consultez votre administrateur réseau pour obtenir ces informations.
Exemple avec configuration DNS :
mkdir -p ~/duplistatus_data
# Start the container with DNS configuration
podman run -d \
--name duplistatus \
--userns=keep-id \
--dns 100.100.100.100 \
--dns-search example.com \
-e TZ=Europe/London \
-e LANG=en_GB \
-p 9666:9666 \
-v ~/duplistatus_data:/app/data \
ghcr.io/wsj-br/duplistatus:latest
Vous pouvez spécifier plusieurs serveurs DNS en ajoutant plusieurs drapeaux --dns :
--dns 8.8.8.8 --dns 1.1.1.1
Vous pouvez spécifier plusieurs domaines de recherche en ajoutant plusieurs drapeaux --dns-search :
--dns-search example.com --dns-search internal.local
Note : Ignorer les adresses IPv6 (contenant :) et les adresses localhost (comme 127.0.0.53) lors de la configuration des serveurs DNS.
Consultez la section Fuseau horaire pour plus de détails sur la façon d'ajuster le fuseau horaire et le format des nombres/dates/heures.
Option 6 : Utilisation des pods Podman
Les pods Podman vous permettent d'exécuter plusieurs conteneurs dans un espace de noms réseau partagé. Ceci est utile pour les tests ou quand vous avez besoin d'exécuter duplistatus aux côtés d'autres conteneurs.
Configuration de base du pod :
mkdir -p ~/duplistatus_data
# Create the pod
podman pod create --name duplistatus-pod --publish 9666:9666/tcp
# Create the container in the pod
podman create --name duplistatus \
--pod duplistatus-pod \
--user root \
-e TZ=Europe/London \
-e LANG=en_GB \
-v ~/duplistatus_data:/app/data \
ghcr.io/wsj-br/duplistatus:latest
# Start the pod
podman pod start duplistatus-pod
Configuration de DNS pour les pods Podman
Quand vous utilisez des pods, la configuration DNS doit être définie au niveau du pod, et non au niveau du conteneur. Utilisez les mêmes méthodes décrites dans l'Option 5 pour trouver vos serveurs DNS et domaines de recherche.
Exemple avec configuration DNS :
mkdir -p ~/duplistatus_data
# Create the pod with DNS configuration
podman pod create --name duplistatus-pod \
--publish 9666:9666/tcp \
--dns 100.100.100.100 \
--dns-search example.com
# Create the container in the pod
podman create --name duplistatus \
--pod duplistatus-pod \
--user root \
-e TZ=Europe/London \
-e LANG=en_GB \
-v ~/duplistatus_data:/app/data \
ghcr.io/wsj-br/duplistatus:latest
# Start the pod
podman pod start duplistatus-pod
Gestion du pod :
# Stop the pod (stops all containers in the pod)
podman pod stop duplistatus-pod
# Start the pod
podman pod start duplistatus-pod
# Remove the pod and all containers
podman pod rm -f duplistatus-pod
Configuration Essentielle
- Configurez vos serveurs Duplicati pour envoyer les messages de journaux de sauvegarde à duplistatus (requis).
- Connectez-vous à duplistatus – consultez les instructions dans le Guide de l'utilisateur.
- Collectez les journaux de sauvegarde initiaux – utilisez la fonctionnalité Collecter les journaux de sauvegarde pour remplir la base de données avec les données de sauvegarde historiques de tous vos serveurs Duplicati. Cela met également à jour automatiquement les intervalles de surveillance de sauvegarde en fonction de la configuration de chaque serveur.
- Configurez les paramètres du serveur – configurez les alias de serveur et les notes dans Paramètres → Serveur pour rendre votre tableau de bord plus informatif.
- Configurez les paramètres NTFY – configurez les notifications via NTFY dans Paramètres → NTFY.
- Configurez les paramètres e-mail – configurez les notifications par e-mail dans Paramètres → E-mail.
- Configurez les notifications de sauvegarde – configurez les notifications par sauvegarde ou par serveur dans Paramètres → Notifications de sauvegarde.
Consultez les sections suivantes pour configurer les paramètres optionnels tels que le fuseau horaire, le format des nombres et HTTPS.