Bonjour !

L’annĂ©e derniĂšre, j’ai rĂ©ussi Ă  quitter Google et j’ai rejoint Infomaniak pour les mails et le drive partagĂ©. Je suis assez content de ce dĂ©mĂ©nagement mais ça n’a pas rĂ©solu mon usage de certains autres logiciels (Spotify et Notion notamment).

Infomaniak ne pouvant pas rĂ©pondre Ă  ces besoins, je me suis mis en quĂȘte de logiciels Ă  hĂ©berger sur mon NAS Synology. HĂ©las, je n’ai rien trouvĂ© de suffisamment lĂ©ger pour s’exĂ©cuter rapidement sur mon petit NAS.

J’ai un profil pas trop geek : Je ne suis pas dĂ©veloppeur, ni administrateur rĂ©seau. Mais j’utilise plusieurs machines au quotidien (un pc fixe, un pc portable, un NAS) et j’aime bien rĂ©cupĂ©rer du matĂ©riel informatique pour bricoler. Bref, sans ĂȘtre un pro du secteur, je suis pas non plus totalement novice. Je dĂ©taille ici la mise en place de mon “mini cloud” personnel, car je pense que mon profil, plutĂŽt monsieur tout le monde, peut montrer Ă  des gens au profil similaire que ce projet reste accessible.

J’ai donc dĂ©cidĂ© le mois dernier de monter mon serveur maison pour rĂ©pondre Ă  mes besoins : Le drive partagĂ© (je tiens Ă  garder des docs modifiables Ă  plusieurs), un notion-like et un spotify-like. Je suis restĂ© chez Infomaniak pour les mails car ça me semble trop dangereux de rapatrier le serveur mail chez moi, si jamais j’ai une panne.

Concernant le matĂ©riel, j’ai commencĂ© par opter pour une infrastructure avec des Raspberrys, et en rĂ©utilisant les disques des mon NAS. J’avais 2 Raspberrys pi dans un tiroir et des lecteurs USB-SATA. Je voulais un serveur principal sur lequel sont exĂ©cutĂ©s les logiciels et un second chez un ami qui duplique en permanence le contenu du premier en cas de problĂšme.

HĂ©las je n’ai pas rĂ©ussi Ă  rĂ©soudre un gros problĂšme : MalgrĂ© l’alim officiel Raspberry (5A en 5V) et une alim dĂ©diĂ©e pour le lecteur de disque, le lecteur de disque SATA se dĂ©connectait du Raspberry et faisait planter les logiciels. AprĂšs des heures de recherches, j’ai capitulĂ©.

Et rĂ©cemment, en allant Ă  la dĂ©chetterie, je suis tombĂ© sur un PC gamer dans une benne. Je l’ai rĂ©cupĂ©rĂ© et tout Ă©tait mort (ou absent) sauf l’alimentation de 500W. Je me suis donc mis en quĂȘte de monter un PC en dĂ©pensant peu. Vu que j’ai tendance Ă  garder pleins de trucs, j’avais quelques composants en stock, notamment une carte mĂšre qu’un ami qui avait montĂ© un ordi dans son entreprise m’avait donnĂ© car l’emplacement PCI express Ă©tait en panne, deux barrettes de RAM de 8Go et un petit SSD M2 de 64Go trouvĂ© en braderie cette annĂ©e. Il me manquait le processeur que j’ai achetĂ© 30€ sur Leboncoin (un Ryzen 5 pas si vieux).

Et voilà, j’ai pu monter un vrai PC et y brancher mes disques durs directement en SATA.

Pour le PC de backup, j’ai utilisĂ© un PC Dell d’entreprise de 2002 (il a 2go de RAM et un Intel Pentium 4) que j’avais rĂ©cupĂ©rĂ© Ă©galement dans une benne quand j’étais au lycĂ©e (et qui attendait depuis 13 ans dans le grenier de mes parents). Ce PC a beau avoir 25 ans, il a quand mĂȘme du SATA et a reconnu le gros disque dur.

Le serveur principal

Le PC de 2002

Pour les OS, j’ai installĂ© Ubuntu Server 26.04 sur le serveur principal et Debian 12 en 32 bits sur le serveur de backup car il a une architecture 32 bits (il est vraiment trĂšs vieux 😅 ).

J’ai dĂ©couvert comment utiliser un ordinateur en ligne de commande. Ça m’a pris plusieurs semaines avant de retenir les commandes les plus courantes, mais c’est cool. Maintenant je n’ai plus trop besoin de me rĂ©fĂ©rer Ă  mon mĂ©mo que je m’étais fait pour utiliser les ordis.

Et j’ai donc installĂ© Docker (et docker compose). Ce logiciel est assez Ă©trange pour moi (ce n’est ni un Ă©mulateur, ni un launcher) et je suis trĂšs content d’avoir dĂ©couvert ce site qui m’a permis d’y voir plus clair et apprendre les bonnes pratiques. Si vous ne savez pas ce qu’est Docker, voici une explication.

Ensuite, au sein de Docker, j’ai installĂ© ces logiciels :

  • Nextcloud : Un logiciel de drive trĂšs complet
  • Collabora Online : La suite bureautique qui s’intĂšgre dans Nextcloud
  • Immich : Une photothĂšque qui ressemble beaucoup Ă  Google Photos
  • Docmost : Notion-like mais sans les bases de donnĂ©es (hĂ©las)
  • Navidrome : Une bibliothĂšque pour la musique
    • Note : Pour Ă©couter la musique, j’utilise Symphonium depuis mon tĂ©lĂ©phone et Feishin depuis mon ordi
  • Nginx Proxy Manager : Ce logiciel permet de passer d’une IP Ă  une URL. J’ai utilisĂ© un nom de domaine que j’avais chez Infomaniak pour lier l’IP et les ports des logiciels vers des sous domaines (exemple : drive.pierrevlg.fr). C’est super pratique et plus simple Ă  utiliser par mes proches que de leur dire qu’ils doivent installer un client VPN pour accĂ©der aux services.
  • MiniDLNA : Ce logiciel permet au lecteur CD de mon salon d’accĂ©der Ă  la musique depuis le rĂ©seau local.
  • Syncthing : C’est le logiciel de backup que j’ai installĂ© sur les deux serveurs pour backuper en permanence les donnĂ©es. A noter que Docker n’est pas dispo en 32 bits donc impossible Ă  installer sur le PC de backup. Mais Syncthing existe en 32bits et j’ai pu l’installer directement sur l’OS.
  • Termix : C’est un logiciel pour accĂ©der Ă  distance en SSH aux diffĂ©rents ordis.

Au sein de Ubuntu, j’ai Ă©galement installĂ© SMB pour accĂ©der aux fichiers depuis le rĂ©seau local.

Concernant la musique : Évidemment, pour garnir ma bibliothĂšque, j’ai un peu galĂ©rĂ©. Voici mon processus : J’ai extrait tous mes CD avec Whipper en FLAC. Whipper annote automatiquement les fichiers pour qu’ils aient une pochette et les bonnes mĂ©tadonnĂ©es. Maintenant que j’ai extrait tous mes CD, soit j’achĂšte ma musique sur Bandcamp soit j’extraie les CD de mes amis.

Si ça intéresse des gens, je peux détailler certains aspects de cette mise en place (configuration du reverse proxy Nginx Proxy Manager avec Infomaniak, configuration de Syncthing pour que ça backup bien tous les disques comme il faut etc).

Le bilan

Ca marche super bien. Les deux PC sont trĂšs stables, mĂȘme lorsque toute la famille est en train d’utiliser les diffĂ©rents services. Je suis trĂšs content d’avoir pu exploiter tout ce matĂ©riel d’occasion. Notamment le vieux PC de 2002 que je n’imaginais pas pouvoir utiliser un jour.

Étant nĂ©ophyte de Linux, la mise en place de ces logiciels sur un serveur a Ă©tĂ© vraiment compliquĂ©e. Lorsque les raspberrys crashaient, j’ai failli capituler. En plus, apprendre Ă  utiliser un ordi en ligne de commande via SSH, Ă©diter un .yaml sans faire d’erreur, apprendre Ă  utiliser Linux en fait, c’est vraiment dur, il faut s’accrocher. Mais c’est pas insurmontable et c’est satisfaisant d’y arriver. Et c’est cool de comprendre un peu mieux ce pan de l’informatique que j’avais toujours regardĂ© en me disant que c’était trop geek pour moi. Je pense que j’ai passĂ© 5 ou 6 jours cumulĂ©s Ă  mettre tout ça en place. Mais si je devais le refaire, maintenant que je comprends un peu mieux comment marche tout ça, je pense que ça me prendrait une journĂ©e.

Et l’argent : Monter son propre serveur n’est pas Ă©conomique, mais ça va encore.

Spotify Famille + le drive Infomaniak coute environ 280€ par an. C’est Ă  peu prĂšs les seules dĂ©penses que j’avais.

Ici, j’ai limitĂ© les frais en rĂ©cupĂ©rant du matĂ©riel. Si j’avais du payer le matĂ©riel, voici grosso modo ce que ça aurait pu couter :

  • Serveur principal (Ryzen 5, 16go de ram) : 500€
  • Serveur de backup : 100€
  • Disques durs : 300€

Et concernant les frais de fonctionnement :

  • Nom de domaine : 10€ par an
  • ÉlectricitĂ© : 50€ par an

La premiĂšre annĂ©e, cette infrastructure aurait pu couter 960€. Puis 60€ les annĂ©es suivantes. Il aurait donc fallu attendre 5 ans pour que ça devienne plus rentable que Spotify/Infomaniak. En vrai ça va, d’autant que le serveur peut hĂ©berger d’autres services normalement payant.

Dans mon cas, vu que j’ai rĂ©cupĂ©rĂ© pas mal de matĂ©riel, ça me coute donc 90€ cette annĂ©e (30€ pour le processeur que j’ai achetĂ©, 50€ pour l’électricitĂ© et 10€ pour le nom de domaine) et ça me coutera 60€ les annĂ©es suivantes.

AprĂšs, il est possible de soutenir les logiciels qu’on apprĂ©cie en faisant des dons, ce qui augmente les dĂ©penses. Et il faut aussi compter l’achat des musiques sur Bandcamp, Discogs etc.

Et l’écologie : J’imagine qu’il est compliquĂ© de comparer cet usage “cloud” Ă  celui que nous aurions pu avoir avec les services du commerce. Les Ă©conomies d’échelle des hĂ©bergeurs de donnĂ©es rendent probablement le cout Ă©nergĂ©tique par utilisateur assez faible. D’autant qu’Infomaniak redistribue la chaleur gĂ©nĂ©rĂ©e par ses datacenters pour chauffer des logements. De mĂȘme, mĂȘme si les hĂ©bergeurs changent rĂ©guliĂšrement le matĂ©riel, cet impact doit ĂȘtre faible ramenĂ© Ă  l’utilisateur.

Je pense que l’impact Ă©cologique de mon “mini cloud” est donc minime face Ă  l’usage que nous avions quand nous Ă©tions chez Spotify, Infomaniak et Notion. NĂ©anmoins, je peux quand mĂȘme en partie quantifier l’impact de mon infrastructure :

  • Niveau matĂ©riel : Tout le matĂ©riel est d’occasion voire devait finir Ă  la benne (sauf les disques durs qui proviennent de mon ancien NAS). D’ailleurs, ce NAS n’a pas terminĂ© sa vie. Je lui ai mis 4 disques durs de 2to que j’avais rĂ©cupĂ©rĂ© (pour 4to effectifs en RAID) et il sert de stockage pour l’administratif du restaurant d’une amie.
  • Niveau Ă©lectricitĂ©, l’ensemble de ma “baie informatique” (box Internet, switch ethernet et le serveur) consomme moins de 8000 Wh sur une semaine classique, soit moins de 400 kWh par an. Le serveur de backup consomme moins de 3000 Wh en moyenne sur une semaine, soit moins de 200 kWh par an. Je trouve que c’est une consommation Ă©lectrique assez sobre, d’autant que nous sommes 8 Ă  utiliser le serveur (ma famille et des amis).

Maintenant l’objectif est de faire tenir cette petite infrastructure le plus longtemps possible. Et ma volontĂ©, maintenant que tout est en place et tourne sans problĂšme, est d’y allouer le moins de temps possible. J’ai documentĂ© tout ce que j’ai fait et j’ai notĂ© toutes les manips et commandes Ă  faire pour mettre Ă  jour les logiciels. Je pense donc aller voir si tout va bien et mettre Ă  jour si besoin une fois tous les 2 mois.

La suite : Je suis Ă  l’affut d’un systĂšme d’onduleur avec batterie d’occasion (j’ai dĂ©jĂ  une batterie de moto au plomb qu’il ferait bien l’affaire) pour maintenir une alimentation du serveur en cas de panne de courant. L’idĂ©e n’est pas d’assumer une alimentation Ă©lectrique de plusieurs heures, juste de permettre au serveur de s’éteindre proprement en cas de coupure (et se relancer tout seul une fois le courant revenu).

J’imagine qu’il doit y avoir ici pas mal de personnes qui “self host” dĂ©jĂ  leurs logiciels. Mais comme dit au dĂ©but, je me dis que mon profil pas trop geek peut donner envie Ă  d’autres de passer le pas. J’ai passĂ© plusieurs semaines entre le moment oĂč j’ai commencĂ© et aujourd’hui oĂč je constate que mes serveurs ne nĂ©cessitent presque plus de maintenance. C’était long et chiant par moment mais je suis trĂšs content.

Bonne journée !