[Tuto] Installation de Duplicati en Docker

EVO

Administreur
Membre du personnel
25 Novembre 2019
8 204
1 572
278
/var/run/docker.sock
Bonjour,
Nous allons ici utiliser docker-compose ( mais il est possible de passer par Portainer également ) pour installer Duplicati.

duplicati-icon.png

Duplicati ? C'est quoi ?
Logiciel de sauvegarde gratuit pour stocker des sauvegardes cryptées en ligne.
Duplicati fonctionne avec des protocoles standard tels que FTP, SSH, WebDAV ainsi que des services populaires tels que Microsoft OneDrive, Amazon Cloud Drive & S3, Google Drive, box.com, Mega, hubiC et bien d'autres.

Pré-requis :
Avoir un accès SSH à la machine
Avoir installer docker et docker-compose , docker-compose
Connaitre le PUID/GUID de l'utilisateur, voir tuto

Sommaire :
1/ Créer les dossiers nécessaires
2/ Création de la configuration et des conteneurs

_____2.1/ Création du fichier "docker-compose.yml"
_____2.2/ Création des conteneurs

3/ Configuration de Duplicati
______3.1/ Accès a l'interface de Duplicati
______3.2/ Configuration


C'est parti ! :giggle:

1/ Créer les dossiers nécessaires
Pour mon tuto, je vais placer mon dossier duplicati/config dans /home/nom_dutilisateur/docker, il faudra adapter vos changements dans le fichier "docker-compose.yml" à l'étape suivante.

Je me place donc dans /home/nom_dutilisateur/docker: cd /home/nom_dutilisateur/docker

Duplicati a besoin d'un dossier /config que je peu créer de cette maniere : sudo mkdir -p duplicati/config}

2/ Création de la configuration et des conteneurs
2.1/ Création du fichier "docker-compose.yml"

Note : ici on considère que nous sommes déja dans /home/nom_dutilisateur/docker, si ce n'est pas le cas, vous pouvez soit vous placer dans le bon dossier avec la commande cd /home/nom_dutilisateur )

Pour créer le fichier :
sudo nano duplicati/docker-compose.yml

Ensuite vous copier/coller ceci dedans :
Code:
version: "2.1"
services:
  duplicati:
    image: lscr.io/linuxserver/duplicati
    container_name: duplicati
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Europe/Paris
    volumes:
      - ./config:/config
      - </path/to/backups>:/backups
      - </path/to/source>:/source
    ports:
      - 8200:8200
    restart: unless-stopped

Il sera nécessaire de modifier les volumes : /backups et /backups

Vous devez modifier </path/to/backups>:/backups et </path/to/source>:/source, /backups représente le chemin vers vos futures sauvegardes, et /source représente le dossier à sauvegarder.

Si par exemple, le dossier a sauvegarder est : /volume1/home/mes_dossiers alors, cela ce représente de cette façon : /volume1/home/mes_dossiers:/source

PUID et GUID sont à modifier suivant les ID de votre utilisateur ( voir pré-requis )

On quitte le fichier Ctrl+X et on valide les modifications.

2.2/ Création des conteneurs
On se place dans le dossier ou nous avons créer notre fichier yml :
Code:
cd /home/nom_dutilisateur/docker/duplicati
, et on execute la commande :
Code:
docker-compose up -d
Une fois fini, la commande renvoi "done" :

3/ Configuration de Duplicati
3.1/ Accès a l'interface de Duplicati
Si vous avez laisser le port par défaut, alors l’accès a Duplicati se fait via l'adresse http://adresse-ip-locale + port, par exemple si votre machine a l'adresse 192.168.1.210 alors l’accès se fait a http://192.168.1.210:8200

3.2/ Configuration
A la 1ere connexion à l'interface il vous sera demander si vous voulez définir un mot de passe, cliquer sur Yes !
2021-11-01 08_55_32-Window.png
 
Dernière édition:
J'avais essayé Duolicati sur mon Syno (à l'époque du 214play, donc pas en docker, mais via un spk), c'était pas vraiment stable...
C'est ce qui m'a fait cesser de l'utiliser. J'utilisais OneDrive comme destination de sauvegarde.

Est-ce (devenu) stable en utilisation Docker ?

As-tu tenter une restauration des données via cet outils ?


PS : pour le chemin source, peut-on le définir en lecture seule (RO) ?
 
Est-ce (devenu) stable en utilisation Docker ?
Je le test depuis ce matin, cela marche bien.

As-tu tenter une restauration des données via cet outils ?
Pas encore, j'en suis encore au test sauvegarde non chiffré/chiffré, incremental, ...

PS : pour le chemin source, peut-on le définir en lecture seule (RO) ?
Je suppose que si on fait cela, la restauration deviens impossible :unsure:
 
./config:/config - </path/to/backups>:/backups - </path/to/source>:/source
Bonsoir, je viens d'essayer de l'installer en passant par ovm en utilisant docker et portaient.
J'ai un message d'erreur, au niveau des destinations, je vais continuer à chercher par contre, est il possible de faire une sauvegarde de mon pc vers le nas avec ce logiciel ?
 
Bjr @ tous,
j'ai un souci de droits lors de l'accès à mon répertoire destination:

Capture d'écran 2023-11-03 073629.png

J'ai pourtant autorisé mon utililsateur en lecture/écriture.
Modifié mon PUID et GUID en fonction de ceux de mon utilisateur et non root.
Je teste sur un autre disque pour voir si cela pourrait venir de là, mais je n'y crois pas trop....
Non, d'ailleurs, l'erreur vient d'arriver.

Vous auriez une idée?

Merci Yoh
 
Slt,
purée tu es réactif.
Merci

drwxrwsr-x 3 root users 21 3 nov. 08:27 .
drwxr-xr-x 3 root root 20 3 nov. 08:24 ..
drwxr-sr-x 2 root root 6 3 nov. 08:27 backups
 
On voit que backup appartient a root :
1699002741745.png

Il te faut arreter le conteneur, et changer le propriétaire avec chown

Exemple :

chown -R PUID:GUID backup

Change PUID et GUID par les ID de ton utilisateur. Tu peux aussi les marquer en toutes lettres.

Exemple pour un utilisateur test dans le groupe users qui donnerai
test PUID 1000 et GUID 100

La commande serait : chown -R test:users backup ou chown -R 1000:100 backup
 
Dernière édition:
  • J'aime
Réactions: Nincha
Merci beaucoup.
Cela fonctionne.
J'ai eu un message d'erreur, mais cela semble être passé...
Encore, merci.
Bonne journée.
 
Le -R c'est pour attribuer la même propriété dans les sous dossiers ? Pour du récursif ?
Oui

Merci beaucoup.
Cela fonctionne.
J'ai eu un message d'erreur, mais cela semble être passé...
Encore, merci.
Bonne journée.
Vu que le dossier appartient actuellement a root, je suppose qu'il faut executer la commande en root, soit faire su - pour prendre la place de root , ou alors executer la commande avec sudo, exemple sudo chown -R PUID:GUID backup
 
  • J'aime
Réactions: Nincha