Le partage de fichiers volumineux en toute sécurité, sans dépendre de services externes, est un enjeu de plus en plus sensible pour les entreprises comme pour les indépendants. Les solutions centralisées telles que WeTransfer ou Google Drive imposent en contrepartie de leur simplicité des compromis en matière de confidentialité, de personnalisation ou de maîtrise des flux de données. Pour les développeurs familiers de l'écosystème Laravel, la recherche d'une alternative auto-hébergée, flexible et moderne s'avère donc particulièrement pertinente.
C'est dans ce contexte qu'Erugo se distingue : cette application open source propose une plateforme de partage de fichiers élégante et puissante, basée sur Laravel et Vue.js. Elle allie une interface intuitive, un contrôle total des données et une installation personnalisable, ce qui en fait un atout majeur pour quiconque souhaite retrouver sa souveraineté numérique.
Dans cet article, je vous invite à découvrir Erugo, qui est un nouveau venu dans ce domaine, à comprendre ce qui le distingue des autres solutions et surtout, à l'installer pas à pas sur votre serveur, sans utiliser Docker. Que vous soyez curieux d'explorer de nouveaux outils Laravel ou décidé à proposer un service de transfert de fichiers à votre image, suivez le guide : simplicité, sécurité et auto-hébergement sont au programme !
Qu’est-ce qu’Erugo ?
Origine et philosophie du projet
Il s'agit d'une application open source conçue comme une alternative à WeTransfer, mais avec une différence majeure : elle met l’accent sur l’auto-hébergement et la protection de la vie privée. Ce projet, encore jeune, se distingue par sa volonté de permettre à chacun de maîtriser totalement le partage de fichiers, sans dépendre de services tiers ni compromettre la confidentialité des données. Erugo incarne une philosophie de souveraineté numérique à la fois pour les professionnels et les particuliers qui souhaitent garder le contrôle de leurs outils et de leurs données.
Principales fonctionnalités orientées confidentialité
Erugo se caractérise par :
- l’hébergement intégral des fichiers sur votre propre infrastructure, sans envoi ni stockage sur des serveurs externes
- des liens de partage conviviaux et personnalisables, protégés par une expiration automatique ou un mot de passe selon vos besoins
- un contrôle d'accès renforcé : seuls les utilisateurs autorisés peuvent créer des partages, tandis que les destinataires y accèdent simplement via le lien transmis
- aucune publicité, aucun suivi et une base de données locale (SQLite par défaut) pour garantir une empreinte minimale de vos échanges
- une configuration et une utilisation entièrement transparentes et adaptables dès le premier lancement.
Comparaison rapide avec d’autres solutions (WeTransfer, etc.)
À la différence de plateformes telles que WeTransfer, Google Drive ou Dropbox, Erugo ne transfère aucune information ou fichier vers une entité extérieure : tout se déroule sur votre propre serveur. Cela supprime les problématiques de confidentialité liées à la collecte ou à l’analyse des données utilisateur, ainsi que les limitations imposées par des tiers (durée de partage, taille des fichiers, présence de publicité). Grâce à sa prise en main simple — télécharger, configurer, partager —, Erugo s’adresse aussi bien aux particuliers qu’aux professionnels soucieux de contrôler chaque étape du transfert de leurs données.
Pourquoi installer Erugo sans Docker ?
Installer Erugo sans Docker présente plusieurs avantages pour les utilisateurs expérimentés de Laravel ainsi que pour les développeurs qui souhaitent un contrôle total sur leur environnement de production ou de développement.
Avantages du déploiement traditionnel pour les utilisateurs de Laravel
- maîtrise de la configuration : installer Erugo nativement permet d'adapter l'architecture du projet à un environnement Laravel déjà en place, de tirer parti de configurations avancées et de gérer soi-même les dépendances, la sécurité et les performances du serveur selon ses besoins spécifiques
- facilité de débogage et d’intégration : sans l’abstraction d’un conteneur, il est plus simple d’accéder aux journaux d'événements, de gérer les permissions ou d'intégrer Erugo à d'autres outils présents sur le système. Cette méthode est particulièrement adaptée à ceux qui développent déjà des modules ou des applications Laravel sur leur infrastructure existante
- compatibilité et personnalisation : certains environnements d'hébergement, notamment mutualisés, ne prennent pas en charge Docker. L’installation classique garantit une compatibilité maximale et permet d'ajuster précisément les versions de PHP, les extensions ou les services associés
Scénarios et besoins types
- environnements mutualisés ou restrictions système : vous travaillez sur un hébergement sans Docker, par exemple sur des offres mutualisées ou des VPS déjà configurés
- vous souhaitez intégrer Erugo à une plateforme Laravel existante, en profitant de la structure commune pour la gestion des utilisateurs, la sécurité ou la supervision
- préférences ou exigences de l'entreprise : les politiques de sécurité ou de conformité de votre organisation interdisent l'utilisation de conteneurs ou vous privilégiez une transparence totale concernant l'installation et la gestion logicielles
- besoins pédagogiques et compréhension du fonctionnement interne : pour apprendre ou enseigner Laravel, une installation manuelle offre une vision complète du cycle de vie de l'application, des migrations à la gestion des actifs front-end
En résumé, installer Erugo sans Docker s'adresse à tous ceux qui souhaitent conserver une mainmise complète sur leur pile Laravel, optimiser l'intégration à leurs outils existants ou répondre à des contraintes techniques ou organisationnelles spécifiques, sans la complexité ni la couche d'abstraction supplémentaire qu'apporte la conteneurisation.
Prérequis à l’installation
Avant d'installer Erugo sans Docker, il est important de vérifier que votre environnement serveur remplit les conditions minimales suivantes pour garantir un fonctionnement optimal.
PHP
Erugo nécessite au minimum PHP 8.2 pour fonctionner correctement.
Pour assurer une bonne compatibilité avec Laravel et le fonctionnement d'Erugo, vous devez activer plusieurs extensions PHP essentielles, parmi lesquelles :
- pdo et pdo_sqlite (pour la gestion de la base de données par défaut SQLite)
- openssl (pour la sécurisation des communications)
- fileinfo (gestion des fichiers)
- zip (compression/décompression)
- mbstring (encodage multibyte)
- curl (pour les appels HTTP externes éventuels)
- sodium (pour l'encryption)
Ces extensions sont généralement incluses dans les installations PHP récentes (à part sodium peut-être), mais il est important de les vérifier avant l'installation.
Serveur Web
Erugo peut être servi sans problème par les deux serveurs Web courants. Nginx, souvent privilégié pour ses performances et sa flexibilité. Apache, très répandu et simple à configurer, notamment grâce au module mod_rewrite nécessaire pour le routage Laravel. Le choix dépendra de votre infrastructure et de vos préférences. Dans tous les cas, veillez à configurer la racine web (root) pour qu'elle pointe vers le dossier public d'Erugo.
Accès à la console (SSH)
Une connexion SSH à votre serveur est indispensable pour :
- cloner le dépôt GitHub d’Erugo
- installer les dépendances PHP via Composer
- compiler les ressources front-end avec NPM/Yarn
- exécuter les commandes artisan de Laravel pour la configuration et la migration de la base de données.
Composer est un outil incontournable pour récupérer automatiquement toutes les dépendances dont Erugo a besoin. Avant de commencer, assurez-vous qu'il est installé et disponible en ligne de commande sur le serveur et à jour (composer --version).
Installation manuelle pas à pas
Voici un guide détaillé pour installer Erugo sur votre serveur ou votre environnement Laravel classique, sans Docker.
Clonez le dépôt Erugo
Ouvrez un terminal, placez-vous dans le répertoire où vous souhaitez l'installer, puis lancez la commande suivante :
git clone https://github.com/ErugoOSS/Erugo.git erugo
cd erugo
Il récupère l’ensemble des fichiers nécessaires dans un dossier nommé erugo. Vous êtes ensuite correctement positionné dans le dossier.
Si vous ne disposez pas de Git utilisez FTP pour transférer l'ensemble des fichiers.
Copiez et personnalisez le fichier de configuration .env et créez une clé
Dupliquez le fichier d’exemple :
cp .env.example .env
Ouvrez ensuite le fichier .env avec un éditeur de texte et ajustez les paramètres de connexion à la base de données, de configuration du stockage et de configuration des e-mails, si nécessaire.
Une clé unique est essentielle pour sécuriser les sessions et les données chiffrées :
php artisan key:generate
La clé sera automatiquement insérée dans le fichier .env.
Installez les dépendances Composer et NPM
Avec Composer, téléchargez toutes les bibliothèques PHP nécessaires :
composer install --no-dev
Installez les dépendances frontend et compilez les ressources :
npm install
npm run build
Cette étape consiste à compiler les fichiers Vue.js et CSS de l'interface utilisateur.
Configuration de la base de données et du stockage
Par défaut, Erugo utilise SQLite pour sa simplicité, mais il est possible de configurer le fichier .env pour utiliser MySQL, MariaDB, PostgreSQL ou tout autre SGBD compatible Laravel, selon vos préférences.
Configurez le disque de stockage dans le fichier .env en définissant le paramètre FILESYSTEM_DRIVER, généralement local pour un stockage sur le serveur, mais vous pouvez configurer un disque cloud (S3, etc.) si nécessaire.
Créez un lien symbolique pour le stockage public pour que les fichiers téléchargés soient accessibles via le navigateur :
php artisan storage:link
Cela lie le dossier storage/app/public au dossier public/storage.
Lancez les migrations pour créer les tables nécessaires dans la base de données en prévoyant également le renseignement des données :
php artisan migrate --seed
Configuration finale
Assurez-vous que les dossiers storage et bootstrap/cache sont accessibles en écriture par le serveur Web :
chown -R www-data:www-data storage bootstrap/cache
chmod -R 775 storage bootstrap/cache
(Remplacez www-data par l’utilisateur de votre serveur web si nécessaire).
Configurez votre serveur Apache ou Nginx de manière à ce que la racine web pointe vers le dossier public d’Erugo.
Activez SSL pour sécuriser vos échanges (via Let’s Encrypt ou un certificat commercial).
Vérifiez ensuite la configuration des fichiers .htaccess (pour Apache) ou du bloc serveur (pour Nginx) afin de permettre le routage Laravel.
Il est possible que vous ayez besoin de générer la clé pour jwt :
php artisan jwt-secret
Une fois ces étapes réalisées, vous pouvez accéder à votre instance Erugo via l'URL configurée et utiliser la plateforme.
Premier lancement
Une fois l'installation et la configuration d'Erugo terminées, vous pouvez accéder à l'interface web pour commencer à utiliser votre instance. Pour y accéder, ouvrez votre navigateur et rendez-vous à l’URL correspondant à votre serveur, par exemple :
https://votre-domaine-ou-ip
Assurez-vous que votre serveur Web est correctement configuré et que le certificat SSL est en place pour une connexion sécurisée.
Lors de votre première connexion, Erugo vous invite à créer un compte administrateur. Ce compte est indispensable pour gérer l’application, configurer les paramètres et créer des partages. Vous devrez renseigner les informations suivantes :
- un nom complet ou un identifiant
- une adresse e-mail valide
- un mot de passe fort (à confirmer).
Validez ensuite la création du compte administrateur.
Une fois le compte créé, vous pourrez vous connecter avec ces identifiants pour accéder au tableau de bord principal.

Personnalisation simple de l'interface
Pour adapter Erugo à votre organisation ou à vos goûts, plusieurs options de personnalisation sont disponibles via l'icône en forme d'engrenage située en bas à droite de l'écran. Voyons quelques exemples non exhaustifs.
Langue de l’interface
Changez la langue par défaut (Erugo est multilingue et prend notamment en charge le français). Vous pouvez également activer un sélecteur de langue pour les visiteurs :

N'oubliez pas de valider en cliquant sur le bouton Save System Settings.
Logo et nom de l’application
Ajoutez votre logo personnalisé et définissez le nom qui apparaîtra dans l’onglet du navigateur :


Message de connexion personnalisé
Affichez un texte d'accueil ou d'information sur la page de connexion.

Thèmes
Si l'aspect par défaut d'Erugo ne vous convient pas vous pouvez télécharger un autre thème parmi ceux proposés :

Il y a du choix, vous pouvez par exemple adopter un mode sombre :

Et si rien ne vous convient vous pouvez également créer un thème personnalisé !
Paramètres système avancés
Modifiez l’URL de l’application, configurez les notifications par e-mail (n'oubliez pas de paramétrer un serveur SMTP) et ajustez les règles de partage (durée de rétention, taille maximale)...
N’oubliez pas de sauvegarder vos modifications via le bouton prévu à cet effet. Vous pouvez ensuite rafraîchir la page pour voir les changements s'appliquer immédiatement.
Cette étape rapide de lancement et de personnalisation vous permet de sécuriser votre instance Erugo tout en proposant une expérience aux couleurs de votre structure, prête à accueillir vos fichiers et ceux de vos collaborateurs ou clients.
Présentation rapide des fonctions clés d’Erugo
Erugo propose un ensemble de fonctionnalités conçues pour faciliter le partage de fichiers tout en garantissant la sécurité, la simplicité et la flexibilité d'utilisation.
Création de partages
L’utilisateur peut créer facilement un lien de partage pour des fichiers ou des dossiers via l’interface web. Les liens générés sont lisibles, humains et personnalisables, par exemple :
votre-domaine.com/shares/quiet-cloud-shrill-thunder
La structure des dossiers est conservée lors des téléchargements et des téléversements, ce qui permet d'envoyer plusieurs fichiers organisés sans perte de hiérarchie.
Gestion des droits
Seuls les utilisateurs autorisés peuvent créer des partages, ce qui permet de contrôler strictement la source des documents. Les liens sont accessibles publiquement à tout destinataire disposant du lien, mais ils peuvent aussi être protégés par mot de passe pour renforcer la sécurité. L’administrateur peut également définir des limites globales, telles que la durée maximale des partages ou la taille maximale des fichiers.
Fonction « reverse sharing »
Erugo permet d'inviter des tiers à déposer des fichiers sur votre compte via un système de partage inversé. Grâce à un jeton à usage unique, vos correspondants peuvent envoyer des fichiers dans un espace sécurisé sans avoir besoin de compte sur la plateforme. Cette fonctionnalité est particulièrement utile pour collecter des documents, des retours clients ou des contributions externes de manière simple et sécurisée.
Expiration et gestion des fichiers
Chaque partage peut être configuré pour expirer automatiquement après un délai défini, de quelques heures à plusieurs jours, ce qui limite la présence prolongée des fichiers sur le serveur. Une procédure de nettoyage automatique supprime les partages expirés, ce qui permet d'assurer une gestion efficace de l'espace de stockage et de minimiser les risques liés à l'accumulation de données sensibles.
Ces fonctions clés font d'Erugo une solution complète, flexible et sécurisée pour le transfert de fichiers en mode auto-hébergé, adaptée aussi bien aux petites équipes qu'aux organisations soucieuses de la confidentialité et de la maîtrise de leurs données.
Conseils d’utilisation et astuces pour les développeurs Laravel
Intégrer Erugo dans un écosystème Laravel existant
Erugo est une application Laravel complète dotée d'un frontend en Vue.js. Elle est conçue pour être autonome, mais suffisamment modulaire pour s'intégrer à une infrastructure Laravel plus large. Pour les développeurs qui souhaitent l’intégrer à un projet existant, voici quelques pistes :
- déploiement dans un sous-domaine ou un sous-répertoire : isolez Erugo en le déployant dans un sous-domaine dédié (files.votresite.com) ou dans un sous-répertoire, afin d'éviter les conflits de routes ou de dépendances
- partage de l’authentification : vous pouvez envisager de relier l’authentification principale de Laravel à celle d’Erugo, par exemple via des middlewares personnalisés ou en externalisant la gestion des utilisateurs. Erugo prend en charge l’authentification externe, ce qui facilite son intégration dans des architectures complexes
- utilisation des API : bien qu'il soit principalement orienté vers l'interface Web, Erugo expose des commandes artisan et peut être étendu via des routes personnalisées pour s'interfacer avec d'autres services Laravel ou des applications tierces
- personnalisation : le code étant open source et basé sur Laravel, il est possible d'étendre les fonctionnalités ou d'adapter le back-office et le front-end à vos besoins métier, en utilisant vos propres contrôleurs, modèles ou composants Vue.
Bonnes pratiques pour les mises à jour ou les contributions
Pour maintenir une instance Erugo à jour ou contribuer au projet, il convient de suivre quelques règles clés :
- gestion des versions via Git : utilisez Git pour gérer les mises à jour, en travaillant sur une branche dédiée pour tester les nouvelles versions avant de les déployer en production. Si vous ne disposez pas de Git alors passez par FTP pour les mises à jour
- effectuez des sauvegardes régulières de la base de données et du dossier de stockage avant toute mise à jour majeure, afin d'éviter toute perte de données
- environnements de développement et de staging : reproduisez votre environnement de production en local afin de tester les modifications avant le déploiement
- contributions au projet : si vous souhaitez contribuer, Erugo accueille volontiers les corrections de bugs, les traductions ou les nouvelles fonctionnalités sous forme de pull requests sur GitHub. Respectez les bonnes pratiques Laravel et la structure du code pour garantir la cohérence et la qualité
- suivi des dépendances : surveillez les mises à jour de Laravel et des packages utilisés par Erugo, et testez leur compatibilité, notamment lors de la sortie d'une nouvelle version majeure de Laravel
En suivant ces conseils, vous maximiserez la robustesse et la pérennité de votre installation Erugo, tout en profitant pleinement de l'écosystème Laravel pour adapter et faire évoluer la solution au fil du temps.
Conclusion
Erugo s'impose comme une solution incontournable pour les utilisateurs de Laravel qui recherchent à la fois confidentialité, contrôle et simplicité dans le partage de fichiers. Conçu dans l’esprit du framework Laravel, il allie la puissance et la flexibilité de ce dernier à une philosophie de souveraineté numérique, permettant à chaque utilisateur de maîtriser entièrement ses données et leur diffusion.
Grâce à son architecture moderne et modulaire basée sur Laravel et Vue.js, Erugo offre un équilibre entre convivialité et personnalisation avancée. L’auto-hébergement garantit une sécurité renforcée en excluant tout transfert de données vers des services tiers, tandis que ses fonctionnalités (liens protégés, expiration automatique, gestion fine des droits et fonction « reverse sharing ») répondent précisément aux besoins actuels de partage collaboratif et sécurisé.
Pour les développeurs Laravel, Erugo est non seulement facile à intégrer à leur environnement existant, mais il constitue également un excellent exemple de bonnes pratiques du framework, notamment en matière de gestion des configurations dynamiques, de sécurité et d'extensibilité. Son code ouvert encourage les contributions et les adaptations, ce qui en fait un projet vivant et évolutif au sein de l'écosystème Laravel.
En résumé, si vous recherchez une solution open source, robuste et respectueuse de la vie privée pour partager vos fichiers en toute maîtrise et sérénité, Erugo mérite sans doute une place de choix dans votre boîte à outils Laravel.
Par bestmomo
Aucun commentaire