Installer Personal Drive avec Docker
Personal Drive

Installer Personal Drive avec Docker

Table des matières

GitHub - gyaaniguy/personal-drive: Self Hosted Google drive alternative
Self Hosted Google drive alternative. Contribute to gyaaniguy/personal-drive development by creating an account on GitHub.

Aujourd'hui nous allons parler de Personal Drive ! Un cloud sans prise de tête: partager des fichiers, les prévisualiser. C'est tout ce qu'il fait, mais il le fait bien.

Bien entendu il comporte les classiques : temps d'expiration, mot de passe. slug pour personnaliser l'URL.

Si vous cherchez un cloud sans 1001 fonctions, parfois bien inutiles, n'hésitez pas à le tester, il pourrait vous plaire.

⚠️
D'après les dires du dev, il y aura une petite refonte, donc utilisez cette application dans l'esprit de la découverte et non pour la production, pour le moment.

⚡ Caractéristiques

  • Partager des fichiers : Protection par mot de passe, définir l'expiration. définir une URL personnalisée, panneau de contrôle du partage, permettant de mettre en pause et de supprimer des partages existants.
  • Lecteur multimédia. Diaporama : Lecture et visualisation d'images et de vidéos, prévisualisation de textes et de fichiers PDF, raccourcis clavier disponibles pendant le diaporama . Gauche, droite, sortir du diaporama.
  • Les fichiers sont indexés.
  • Vignettes générées dynamiquement.
  • Téléchargement récursif de plusieurs fichiers ou de dossiers entiers.
  • Sélection d'un ou de tous les fichiers d'un dossier.
  • Télécharger, supprimer, partager les fichiers sélectionnés.
  • Deux présentations : vue en liste et vue en mosaïque.
  • Tri rapide, même pour des milliers de fichiers.
  • Navigation en fil d'Ariane.

💾 Installation

Prérequis

Avant de commencer, assurez-vous d’avoir :

  • Distribution Linux (Ubuntu, Debian, etc ...).
  • Docker installé.
  • Accès terminal.
  • Connexion internet.

Étapes d'Installation

  1. Dans le dossier où vous comptez installer l'application, créez votre compose :
nano compose.yml
  1. Collez ça dedans :
services:
  personal-drive:
    image: docker.io/personaldrive/personaldrive
    container_name: personal-drive
    restart: unless-stopped
    ports:
      - "8080:80"
    volumes:
      - ./storage:/var/www/html/personal-drive-storage-folder
      - personal-drive-data:/var/www/html/personal-drive/database
    environment:
      APP_URL: https://personnaldrive.votresite.com
      #DISABLE_HTTPS: true
volumes:
  personal-drive-data:
  • APP_URL: https://personnaldrive.votresite.com => Remplacez https://personnaldrive.votresite.com par l'URL de votre instance. Commentez la ligne pour une installation en local.
  • DISABLE_HTTPS: true => Décommentez la ligne pour une installation en local.

⚠️ Attention que le dossier storage soit accessible en écriture. Le dev conseille de faire cette commande :

sudo chmod 777 storage 

On va déployer l'application :

docker compose up -d

Rendez-vous sur l'ip:port, suivant l'IP de votre serveur local et du port choisi, 8080 par défaut :

http://ip:8080/

ou votre domaine :

https://personaldrive.vostresite.com

👤 Création du compte administrateur

Lors du premier lancement de votre instance, créez votre compte administrateur :

  • Username => Choisissez un nom d'utilisateur.
  • Password => Choisissez un mot de passe fort, attention de ne pas vous tromper, pas de confirmation de mot de passe.

Cliquez sur Create Account, vous serez redirigé vers les paramètres d'administration :

  • Cliquez sur Set Root Folder, vous arriverez sur votre tableau de bord :

🔧 Configurer la taille maximale des fichiers envoyés

En cliquant sur Settings vous pourrez prendre connaissance des limitations actuelles pour la taille des fichiers,

Entrez dans le container :

docker exec -ti personal-drive bash

Installons un éditeur de texte :

apt-get update
apt-get install nano
export TERM=xterm

Modifier le fichier uploads.ini :

nano /usr/local/etc/php/conf.d/uploads.ini

Complétez suivant vos besoins et sauvez le fichier :

upload_max_filesize=1000M
post_max_size=1000M
max_file_uploads=100

Sortez du container :

exit

Redémarrez le container :

docker restart personal-drive

Dans cet exemple j'ai juste augmenter la taille des fichiers joints à 3000M :


⤴️ Envoyer des fichiers

En cliquant en haut à droite sur New, vous aurez plusieurs options :

  • Create Folder => Permet de créer un dossier.
  • Upload File => Permet d'envoyer un ou des fichiers.
  • Upload Folder => Permet d'envoyer un dossier complet.

Envoyons un fichier :

En passant votre souris sur le fichier, vous aurez 3 options :

  • Supprimer le fichier.
  • Télécharger le fichier.
  • Partager le fichier.

🔗 Partager un fichier ou un dossier

Cliquez sur l'icône de partage :

Complétez éventuellement les options :

  • Password => Ajoutez ou non un mot de passe.
  • Expire in days => Choisissez la date d'expiration, en jours.
  • Custom URL slug => Vous pouvez éventuellement customiser le lien.

Cliquez sur Get Sharable Link :

Vous n'aurez plus qu'à partager le lien.


🖼️ Prévisualisation

Personal Drive permet de prévisualiser certains fichiers pris en charge par le navigateur. Vous pourrez aussi naviguer avec les flèches de votre clavier d'une photo à l'autre, ce qui permet de partager un album photo par exemple.

Photos

Vidéos

Texte


🌐 Proxy

Caddy

sub.yoursite.com {
    reverse_proxy localhost:8080
} 

zarev

->.<-
🐧 Passionné de self-hosting, je partage ce que je connais et me nourris des connaissances des bonnes âmes qui partagent avec moi. Soutenons l'utilisation des apps open source et leurs développeurs.