Copyparty – Le serveur de fichiers qui tient dans un seul fichier Python
Marre de Nextcloud qui rame comme un escargot asthmatique ? Vous cherchez une solution pour partager des fichiers sans vous prendre la tête avec des configs interminables ? Alors voici un truc vraiment cool qui devrait vous plaire : Copyparty.
Il s’agit d’un serveur de fichiers complet qui tient dans un seul fichier Python. Pas de dépendances obligatoires, pas de base de données MySQL qui fait des siennes, pas de 150 services Docker à orchestrer, vous téléchargez simplement copyparty-sfx.py, vous le lancez, et hop, vous avez un serveur de fichiers qui fonctionne.
C’est un outil qui gère les uploads resumables (vous pouvez mettre en pause et reprendre vos transferts), le WebDAV pour monter votre serveur comme un disque réseau, un serveur FTP intégré, et même du TFTP si vous êtes dans le rétro.
Et l’interface web est plutôt bien fichue. Vous avez un lecteur audio intégré qui transcode à la volée en MP3 ou Opus selon votre navigateur, un visualiseur de markdown, la génération de miniatures pour les images et vidéos, et même un éditeur de texte avec coloration syntaxique. Et le plus fou c’est que ça marche même sur Internet Explorer 6 !
Pour l’installation, sous Linux/Mac, vous faites :
wget https://github.com/9001/copyparty/releases/latest/download/copyparty-sfx.py
python3 copyparty-sfx.py
Et voilà, votre serveur tourne sur le port 3923. Par défaut, tout le monde a accès en lecture/écriture au dossier courant, donc pensez à configurer les permissions si vous ne voulez pas que votre beau-frère supprime votre collection de nudes.
Pour une config plus sérieuse, vous pouvez créer des volumes avec des permissions spécifiques. Par exemple :
python3 copyparty-sfx.py -v /mnt/musique:/music:r:rw,bob -a bob:motdepasse123
Ça partage votre dossier /mnt/musique
sous l’URL /music
, lisible par tous mais modifiable uniquement par l’utilisateur bob.
La fonctionnalité qui va vous faire tomber de votre chaise, c’est le “race the beam”. En gros, vous pouvez commencer à télécharger un fichier pendant qu’il est encore en cours d’upload. C’est du quasi peer-to-peer sans la complexité donc c’est parfait pour partager rapidement des gros fichiers avec des potes.
Et niveau performances, c’est plutôt honorable puisque le développeur annonce 8 Go/s en download et 1 Go/s en upload sur du bon matos. Et si vous voulez rendre votre serveur accessible depuis internet, vous pouvez utiliser Cloudflare Tunnel. C’est gratuit et ça marche nickel :
cloudflared tunnel --url http://127.0.0.1:3923
Cloudflare vous donnera une URL aléatoire que vous pouvez partager. Pensez juste à ajouter --xff-hdr cf-connecting-ip
à copyparty pour qu’il détecte correctement les IPs des clients.
Pour les power users, copyparty c’est aussi :
- Un serveur SMB/CIFS (pour monter comme un partage Windows)
- La déduplication automatique des fichiers (avec des liens symboliques)
- L’indexation du contenu avec recherche par tags ID3
- Des hooks d’événements pour scripter des actions
- Un support complet de IPv6 et des sockets Unix
- Une API HTTP pour automatiser des trucs
Le projet est activement maintenu par un développeur qui se fait appeler “9001” (ou “ed”) sur GitHub et il y a même une démo en ligne si vous voulez tester avant d’installer.
Comparé à Nextcloud, c’est clairement moins complet en termes de fonctionnalités collaboratives car y’a pas de calendrier, pas de contacts, pas de suite office intégrée…etc mais si vous cherchez juste un moyen simple et efficace de partager des fichiers, copyparty fait le job sans vous prendre la tête.
Bref, si vous en avez marre des usines à gaz et que vous voulez juste un serveur de fichiers qui marche, copyparty mérite le détour.
Source : korben.info