[{"data":1,"prerenderedAt":241},["ShallowReactive",2],{"seo-verification":3,"blog-stack-mediatheque-vps-jellyfin-navidrome-immich-fr":6},{"google":4,"bing":5},"EycwPY2XMyTkVzas3n1ygeNJFGAH513qrMjfDljzsMQ","",{"key":7,"data":8},"blog-stack-mediatheque-vps-jellyfin-navidrome-immich-fr",{"id":9,"slug":10,"slugs":11,"title":15,"excerpt":16,"readTime":17,"views":18,"isPinned":19,"publishedAt":20,"updatedAt":21,"category":22,"categories":28,"featuredImage":30,"bgImage":31,"posterImage":32,"relatedSolution":33,"intro":36,"sections":37,"ctaTitle":180,"ctaBody":181,"ctaButton":182,"ctaUrl":183,"relatedPosts":184},513,"stack-mediatheque-vps-jellyfin-navidrome-immich",{"fr":10,"en":12,"ar":13,"es":14},"size-a-vps-for-jellyfin-navidrome-and-immich","تحجيم-خادم-vps-لتشغيل-jellyfin-وnavidrome-وimmich","dimensionar-un-vps-para-jellyfin-navidrome-e-immich","Dimensionner un VPS pour Jellyfin, Navidrome et Immich","RAM, vCPU et disque par service pour faire tenir Jellyfin, Navidrome, Immich et Audiobookshelf sur un seul VPS, avec un Caddy et des sauvegardes.",13,0,false,"2026-10-27T00:00:00+00:00","2026-10-27T23:58:39+00:00",{"id":23,"name":24,"slug":25,"color":26,"icon":27},7,"Self-hosting","self-hosting","bg-indigo-500\u002F10 text-indigo-400","cloud",[29],{"id":23,"name":24,"slug":25,"color":26,"icon":27},null,"\u002Fblog\u002Fcovers\u002Fbg.svg","\u002Fblog\u002Fcovers\u002Fstack-mediatheque-vps-jellyfin-navidrome-immich-poster.svg",{"categorySlug":34,"appSlug":35},"collaboration","immich","Regrouper films, musique, photos et audiolivres sur un seul serveur paraît simple, jusqu'au jour où Immich indexe vos visages et que la mémoire s'effondre. Une erreur de dimensionnement coûte dans les deux sens : un plan trop juste qui redémarre en boucle, ou un plan trop large payé chaque mois. Ce guide chiffre chaque service, fixe la règle qui évite le transcodage vidéo, budgète le disque par bibliothèque et assemble le tout derrière un seul reverse proxy. Il se termine par un tableau qui relie votre profil de bibliothèque à un plan VPS.",[38,42,51,54,89,92,95,126,129,138,141,150,173,177],{"type":39,"title":40,"body":41},"h2","Pourquoi une seule machine pour quatre médiathèques","Sortir de Plex, de Google Photos, de Spotify ou d'Audible conduit presque toujours à un service par type de média. Un VPS unique ramène quatre mises à jour, quatre certificats et quatre sauvegardes à un point d'entrée, un réseau Docker et un plan de sauvegarde.\n\nLa difficulté n'est pas l'installation, que nos guides sur \u003Ca href=\"\u002Fblog\u002Fheberger-immich\">Immich\u003C\u002Fa>, \u003Ca href=\"\u002Fblog\u002Fheberger-jellyfin\">Jellyfin\u003C\u002Fa>, \u003Ca href=\"\u002Fblog\u002Fheberger-navidrome-vps\">Navidrome\u003C\u002Fa> et \u003Ca href=\"\u002Fblog\u002Fheberger-audiobookshelf-vps\">Audiobookshelf\u003C\u002Fa> détaillent déjà. La difficulté est le dimensionnement : Immich et le transcodage vidéo écrasent un petit serveur, alors que Navidrome et Audiobookshelf passent presque inaperçus. Cet article répond à une seule question : quelle machine, pour quelle bibliothèque.",{"type":43,"title":44,"items":45},"ul","Ce que vous gagnez à tout regrouper",[46,47,48,49,50],"**Un seul point d'entrée** — un reverse proxy, un sous-domaine par service, des certificats obtenus et renouvelés automatiquement.","**Une RAM mutualisée** — Navidrome et Audiobookshelf consomment peu, la mémoire laissée libre par l'un profite aux pics de l'autre.","**Un plan de sauvegarde unique** — quatre dossiers de configuration, un dump PostgreSQL, un script.","**Une montée en charge verticale** — quand la bibliothèque grossit, vous augmentez RAM, vCPU et disque du même VPS sans réinstaller la pile.","**Un accès root complet** — vous choisissez la distribution, vous réglez le noyau, vous installez ce que la pile exige.",{"type":39,"title":52,"body":53},"Le budget mémoire et processeur, service par service","Seuls les chiffres d'Immich et de Jellyfin viennent d'une documentation officielle ; les autres lignes sont des réglages de départ, à mesurer chez vous. Relevez vos valeurs une fois la pile en marche avec `docker stats --no-stream`, puis ajustez.\n\nImmich est le poste dominant. Sa documentation donne 6 Go de RAM au minimum et 8 Go recommandés, 2 cœurs au minimum et 4 recommandés. Sur une machine à 4 Go, Immich tourne avec l'apprentissage automatique désactivé, et PostgreSQL demande au moins 2 Go si vous posez des limites Docker. Depuis la version 3, l'image d'apprentissage automatique sur amd64 exige le niveau de jeu d'instructions x86-64-v2 : vérifiez que le plan choisi l'expose.\n\nCôté processeur, c'est l'indexation initiale qui sature, le temps de traiter la photothèque. Les autres services restent quasi invisibles tant que vous ne transcodez pas.",{"type":55,"title":56,"headers":57,"rows":61},"comparison","Budget de réservation par service",[58,59,60],"Service","RAM à réserver","Ce qui la fait grimper",[62,66,70,73,77,81,85],[63,64,65],"Caddy (reverse proxy)","Réglage de départ : 100 Mo, à mesurer","Presque rien : le nombre de sous-domaines n'y change quasiment rien",[67,68,69],"Navidrome","Réglage de départ : 250 Mo, à mesurer","Les scans d'une grande bibliothèque et les clients qui demandent un transcodage audio",[71,68,72],"Audiobookshelf","Les podcasts téléchargés automatiquement et les scans de métadonnées",[74,75,76],"Jellyfin en lecture directe","Réglage de départ : 1 Go, à mesurer (Jellyfin : 4 Go possibles sans interface, 8 Go recommandés)","Les analyses de bibliothèque et les images générées au premier passage",[78,79,80],"Jellyfin avec transcodage logiciel","Aucun chiffre officiel par flux : à mesurer avec un flux d'essai","Chaque flux converti en parallèle, surtout en HEVC ou avec incrustation de sous-titres",[82,83,84],"Immich (serveur, ML, PostgreSQL, Valkey)","6 Go minimum, 8 Go recommandés","L'indexation initiale, la reconnaissance faciale, la recherche sémantique",[86,87,88],"Pile complète, une seule machine","8 Go au moins (valeur recommandée d'Immich), 16 Go pour la marge : une estimation à vérifier","Les travaux Immich lancés pendant qu'un film est transcodé",{"type":39,"title":90,"body":91},"Le budget disque : calculez en Go avant de choisir","Le disque est le premier plafond d'un VPS multimédia, et il se calcule. Pour la vidéo, la formule est : débit en Mb\u002Fs multiplié par la durée en secondes, divisé par 8. Un film de deux heures à 8 Mb\u002Fs pèse environ 7 Go, à 4 Mb\u002Fs environ 3,6 Go. Pour la musique, un album de 45 minutes en MP3 à 320 kb\u002Fs fait environ 110 Mo ; en FLAC, comptez plutôt 300 à 500 Mo. Un audiolivre de 10 heures à 64 kb\u002Fs pèse près de 290 Mo.\n\nPour les photos, partez de 3 Mo par cliché : 10 000 photos occupent donc environ 30 Go, vidéos de téléphone en sus. La documentation d'Immich ajoute que les miniatures et les vidéos transcodées augmentent la taille de la photothèque de 10 à 20 % en moyenne.\n\nSéparez ensuite ce qui doit être rapide de ce qui doit être grand. La base PostgreSQL d'Immich pèse typiquement de 1 à 3 Go, doit vivre sur un SSD local et jamais sur un partage réseau. La configuration de Jellyfin et d'Audiobookshelf aussi : Audiobookshelf déconseille expressément de placer son dossier de configuration sur un partage réseau, au risque de corrompre sa base SQLite. Les médias, eux, peuvent aller sur un volume séparé et plus grand.",{"type":39,"title":93,"body":94},"Ne pas transcoder : la règle qui protège le petit VPS","Jellyfin distingue quatre modes de lecture, du plus léger au plus lourd : lecture directe, remux, flux direct et transcodage. Sa documentation décrit la lecture directe comme une livraison du fichier sans modification, avec presque aucune charge supplémentaire pour le serveur ; le transcodage vidéo est le mode le plus coûteux.\n\nSans carte graphique, tout transcodage vidéo passe par le processeur, et la documentation de Jellyfin rappelle qu'un GPU est toujours recommandé pour cela. Elle prévient aussi que le HEVC, le VP9 et l'AV1 peuvent être très exigeants en logiciel, tout comme le tone-mapping HDR vers SDR faute de GPU.\n\nLa règle pratique tient en trois gestes. Stockez vos films dans un format que vos appareils lisent nativement, typiquement H.264 en MP4 ou MKV. Convertissez une fois, en amont, les fichiers problématiques plutôt que de les convertir à chaque lecture. Et utilisez le réglage par utilisateur de Jellyfin pour interdire le transcodage audio et vidéo aux comptes qui n'en ont pas besoin. Pour vérifier qu'un flux ne consomme rien, lancez une lecture : le tableau de bord affiche le type de lecture, et le processeur doit rester au repos.",{"type":96,"title":97,"steps":98},"steps","Assembler la pile : un réseau, un proxy, un sous-domaine par service",[99,102,105,108,111,114,117,120,123],{"title":100,"body":101},"Créer les dossiers, les droits et le réseau partagé","Séparez médias, photos et configurations, donnez la propriété à l'utilisateur 1000 et créez le réseau que partageront tous les conteneurs :\n\n`sudo mkdir -p \u002Fsrv\u002Fmedia\u002Fvideo \u002Fsrv\u002Fmedia\u002Fmusic \u002Fsrv\u002Fmedia\u002Faudiobooks \u002Fsrv\u002Fphotos \u002Fsrv\u002Fstack\u002Fmedia \u002Fsrv\u002Fstack\u002Fimmich`\n`sudo mkdir -p \u002Fsrv\u002Fstack\u002Fjellyfin\u002Fconfig \u002Fsrv\u002Fstack\u002Fjellyfin\u002Fcache \u002Fsrv\u002Fstack\u002Fnavidrome\u002Fdata \u002Fsrv\u002Fstack\u002Faudiobookshelf\u002Fconfig \u002Fsrv\u002Fstack\u002Faudiobookshelf\u002Fmetadata`\n`sudo chown -R 1000:1000 \u002Fsrv\u002Fstack \u002Fsrv\u002Fphotos`\n`sudo chmod -R a+rX \u002Fsrv\u002Fmedia`\n`docker network create edge`",{"title":103,"body":104},"Pointer quatre sous-domaines vers le VPS","Créez quatre enregistrements A (jellyfin, music, books, photos) vers l'IPv4 du VPS. Caddy obtient les certificats seulement si les enregistrements A ou AAAA pointent vers le serveur et si les ports 80 et 443 sont ouverts de l'extérieur.",{"title":106,"body":107},"Écrire le compose des trois services légers","Dans `\u002Fsrv\u002Fstack\u002Fmedia\u002Fcompose.yaml`, déclarez Jellyfin, Navidrome et Audiobookshelf. Aucun port n'est publié : seul Caddy parle au réseau `edge`. Les médias sont montés en lecture seule pour Jellyfin et Navidrome.\n\n`services:`\n`  jellyfin:`\n`    image: jellyfin\u002Fjellyfin`\n`    user: 1000:1000`\n`    volumes:`\n`      - \u002Fsrv\u002Fstack\u002Fjellyfin\u002Fconfig:\u002Fconfig`\n`      - \u002Fsrv\u002Fstack\u002Fjellyfin\u002Fcache:\u002Fcache`\n`      - \u002Fsrv\u002Fmedia\u002Fvideo:\u002Fmedia:ro`\n`    restart: unless-stopped`\n`    networks: [edge]`\n`  navidrome:`\n`    image: navidrome\u002Fnavidrome:latest`\n`    user: 1000:1000`\n`    volumes:`\n`      - \u002Fsrv\u002Fstack\u002Fnavidrome\u002Fdata:\u002Fdata`\n`      - \u002Fsrv\u002Fmedia\u002Fmusic:\u002Fmusic:ro`\n`    restart: unless-stopped`\n`    networks: [edge]`\n`  audiobookshelf:`\n`    image: ghcr.io\u002Fadvplyr\u002Faudiobookshelf:latest`\n`    user: 1000:1000`\n`    volumes:`\n`      - \u002Fsrv\u002Fstack\u002Faudiobookshelf\u002Fconfig:\u002Fconfig`\n`      - \u002Fsrv\u002Fstack\u002Faudiobookshelf\u002Fmetadata:\u002Fmetadata`\n`      - \u002Fsrv\u002Fmedia\u002Faudiobooks:\u002Faudiobooks`\n`    restart: unless-stopped`\n`    networks: [edge]`",{"title":109,"body":110},"Ajouter Caddy au même fichier","Complétez le fichier avec le service du proxy, puis les déclarations du réseau externe et du volume des certificats :\n\n`  caddy:`\n`    image: caddy:2`\n`    ports:`\n`      - \"80:80\"`\n`      - \"443:443\"`\n`    volumes:`\n`      - .\u002FCaddyfile:\u002Fetc\u002Fcaddy\u002FCaddyfile:ro`\n`      - caddy_data:\u002Fdata`\n`    restart: unless-stopped`\n`    networks: [edge]`\n`networks:`\n`  edge:`\n`    external: true`\n`volumes:`\n`  caddy_data:`",{"title":112,"body":113},"Écrire le Caddyfile, un bloc par service","Dans `\u002Fsrv\u002Fstack\u002Fmedia\u002FCaddyfile`, un nom de domaine suffit à déclencher le TLS automatique, et Caddy redirige HTTP vers HTTPS tout seul :\n\n`jellyfin.votre-domaine.com {`\n`  reverse_proxy jellyfin:8096`\n`}`\n`music.votre-domaine.com {`\n`  reverse_proxy navidrome:4533`\n`}`\n`books.votre-domaine.com {`\n`  reverse_proxy audiobookshelf:80`\n`}`\n`photos.votre-domaine.com {`\n`  reverse_proxy immich_server:2283`\n`}`",{"title":115,"body":116},"Installer Immich avec son compose officiel","Téléchargez les deux fichiers de la dernière version, et ne modifiez pas le compose lui-même :\n\n`cd \u002Fsrv\u002Fstack\u002Fimmich`\n`wget -O docker-compose.yml https:\u002F\u002Fgithub.com\u002Fimmich-app\u002Fimmich\u002Freleases\u002Flatest\u002Fdownload\u002Fdocker-compose.yml`\n`wget -O .env https:\u002F\u002Fgithub.com\u002Fimmich-app\u002Fimmich\u002Freleases\u002Flatest\u002Fdownload\u002Fexample.env`\n\nDans `.env`, réglez les trois valeurs ci-dessous (le mot de passe n'accepte que des lettres et des chiffres) :\n\n`UPLOAD_LOCATION=\u002Fsrv\u002Fphotos\u002Flibrary`\n`DB_DATA_LOCATION=\u002Fsrv\u002Fstack\u002Fimmich\u002Fpostgres`\n`DB_PASSWORD=\u003Cmot-de-passe-A-Za-z0-9>`",{"title":118,"body":119},"Brancher Immich sur le réseau commun","Créez `\u002Fsrv\u002Fstack\u002Fimmich\u002Fdocker-compose.override.yml`. Docker Compose le fusionne automatiquement avec le fichier officiel, qui reste intact et remplaçable à chaque mise à jour :\n\n`services:`\n`  immich-server:`\n`    networks: [default, edge]`\n`networks:`\n`  edge:`\n`    external: true`",{"title":121,"body":122},"Démarrer et vérifier chaque entrée","Lancez les deux piles, attendez l'émission des certificats, puis testez en-têtes HTTP et TLS. Vous devez obtenir un code 2xx ou 3xx sur HTTPS, jamais une erreur de certificat :\n\n`cd \u002Fsrv\u002Fstack\u002Fmedia && docker compose up -d`\n`cd \u002Fsrv\u002Fstack\u002Fimmich && docker compose up -d`\n\n`curl -I https:\u002F\u002Fjellyfin.votre-domaine.com`\n`curl -I https:\u002F\u002Fphotos.votre-domaine.com`",{"title":124,"body":125},"Mesurer, puis régler Immich","Pendant l'indexation, relevez `docker stats --no-stream` et la charge du processeur. Si la mémoire frôle le plafond, désactivez une fonction d'apprentissage automatique (recherche intelligente, reconnaissance faciale) dans les réglages d'administration, ou baissez la concurrence des tâches sans la porter au-delà du nombre de cœurs.",{"type":39,"title":127,"body":128},"Sauvegarder chaque service, restaurer avant d'en avoir besoin","Le piège classique est de sauvegarder les photos sans la base : Immich ne scanne pas son dossier de bibliothèque, il se fie à sa base pour savoir ce qui existe. La documentation distingue les dossiers originaux (`library`, `upload`, `profile`), à sauvegarder impérativement, des dossiers régénérables (`thumbs`, `encoded-video`).\n\nImmich produit aussi ses propres dumps de base, par défaut chaque jour à 2 h du matin, avec les 14 derniers conservés dans le dossier `backups` de l'emplacement de téléversement. Ils ne contiennent que des métadonnées, jamais les photos. Pour garantir la cohérence, arrêtez le conteneur du serveur pendant la sauvegarde ; sinon, sauvegardez la base d'abord, puis les fichiers.\n\nRestauration, sur une machine de test, selon la procédure officielle (puis injection du dump dans `psql`). Attention : `down -v` efface toutes les données Immich de la machine où vous l'exécutez :\n\n`docker compose down -v`\n`docker compose pull`\n`docker compose create`\n`docker start immich_postgres`",{"type":43,"title":130,"items":131},"Plan de sauvegarde par service",[132,133,134,135,136,137],"**Immich, base** — un dump compressé hors du VPS : `docker exec -t immich_postgres pg_dump --clean --if-exists --dbname=immich --username=postgres | gzip > \"\u002Fsrv\u002Fbackup\u002Fimmich-db.sql.gz\"`, en adaptant nom de base et utilisateur à votre `.env`.","**Immich, fichiers** — `library`, `upload` et `profile` copiés avec `rsync` vers un stockage distant ; `thumbs` et `encoded-video` peuvent être régénérés.","**Jellyfin** — le dossier `\u002Fsrv\u002Fstack\u002Fjellyfin\u002Fconfig` (bibliothèques, utilisateurs, métadonnées), conteneur arrêté le temps de l'archive. Le cache se reconstruit.","**Navidrome** — `\u002Fsrv\u002Fstack\u002Fnavidrome\u002Fdata` (base, listes de lecture, cache) ; la musique elle-même est votre source de vérité et se sauvegarde comme un dossier de fichiers.","**Audiobookshelf** — `\u002Fconfig` et `\u002Fmetadata` : la base SQLite et la progression d'écoute vivent dans le premier, les sauvegardes internes dans le second.","**La restauration se teste** — rejouez la procédure officielle d'Immich, détaillée au-dessus, sur une machine de test avant de vous y fier.",{"type":39,"title":139,"body":140},"Dépannage : mémoire saturée, droits refusés, envois coupés","Les pannes de cette pile tiennent en deux familles : la mémoire, quand Immich et un transcodage se disputent les mêmes gigaoctets, et les droits, quand un conteneur non root ne peut pas lire ou écrire un dossier monté. Pour la première, commencez par chercher une trace du noyau avec `dmesg -T | grep -i \"out of memory\"` : si un processus Immich y figure, le noyau l'a tué faute de mémoire, et le conteneur repart en boucle. Pour la seconde, comparez toujours l'identifiant de l'utilisateur du conteneur au propriétaire des dossiers montés.",{"type":43,"title":142,"items":143},"Les erreurs rencontrées et leur remède",[144,145,146,147,148,149],"**Immich redémarre en boucle sur un petit plan** — le noyau tue le conteneur d'apprentissage automatique (cherchez `out of memory` dans `dmesg`). Désactivez la recherche intelligente et la reconnaissance faciale, ou passez à un plan avec au moins 8 Go.","**`can't set healthcheck.start_interval as feature require Docker Engine v25 or later`** — votre Docker est trop ancien. Mettez-le à jour, ou commentez la ligne `start_interval` dans la section `database` du compose, comme l'indique la documentation d'Immich.","**Téléversements de vidéos coupés après une minute** — la documentation d'Immich relève un code 499 derrière Traefik avec le délai de lecture par défaut de 60 secondes, et recommande 600 secondes. Vérifiez le délai de votre proxy.","**Navidrome : `unable to open database file`** — le dossier `\u002Fdata` n'est pas accessible en écriture. Donnez-en la propriété à l'identifiant défini par la directive `user`.","**Navidrome démarre mais la bibliothèque reste vide, avec `permission denied` dans les journaux** — le dossier de musique n'est pas lisible : appliquez `chmod -R a+rX` sur `\u002Fsrv\u002Fmedia\u002Fmusic`.","**Jellyfin ne voit pas les films** — l'utilisateur 1000 du conteneur ne peut pas lire le dossier monté. Testez avec `docker exec jellyfin ls \u002Fmedia` et corrigez les droits ; `PUID` et `PGID` ne fonctionnent pas avec ces images, seule la directive `user` compte.",{"type":55,"title":151,"headers":152,"rows":156},"Quel plan pour quelle médiathèque",[153,154,155],"Profil de bibliothèque","Plan conseillé","Marge et limite",[157,161,165,169],[158,159,160],"Musique, audiolivres et quelques films en lecture directe, Immich sans apprentissage automatique, un ou deux utilisateurs","VPS Start : 2 vCPU, 4 GB, 50 GB SSD, à 99 DH\u002Fmois","Mémoire juste : Immich reste sans ML et le transcodage est à éviter ; le disque limite à quelques films (≈ 7 Go pour un film de deux heures à 8 Mb\u002Fs)",[162,163,164],"Photothèque familiale d'environ 10 000 clichés (30 à 36 Go) avec ML actif, musique et audiolivres, lecture directe","VPS Power : 4 vCPU, 8 GB, 100 GB SSD, à 299 DH\u002Fmois","Atteint les 8 Go recommandés pour Immich seul ; l'indexation initiale ralentit le reste",[166,167,168],"Pile complète à quatre services, deux ou trois utilisateurs, un transcodage ponctuel","VPS Business : 8 vCPU, 16 GB, 200 GB SSD, à 499 DH\u002Fmois","Confortable ; le disque devient le plafond dès que la vidéo dépasse quelques centaines de Go",[170,171,172],"Plusieurs flux transcodés en même temps","VPS Business au minimum, et la conversion en amont des fichiers","Sans GPU, ajouter des vCPU ne suffit pas : mieux vaut convertir une fois que transcoder à chaque lecture",{"type":174,"title":175,"body":176},"tip","Mesurer avant de payer plus","Commencez par le plan que le tableau indique, lancez l'indexation d'Immich et relevez la mémoire avec `docker stats --no-stream` pendant une journée de pointe. Si la marge dépasse 30 %, vous avez la bonne taille ; si le noyau tue un conteneur, montez le plan. La scalabilité verticale du VPS évite la réinstallation : RAM et disque augmentent, vos dossiers `\u002Fsrv` et vos composes restent en place.",{"type":39,"title":178,"body":179},"La documentation officielle et la suite","Les valeurs de ce guide viennent de la documentation des éditeurs : \u003Ca href=\"https:\u002F\u002Fdocs.immich.app\u002Finstall\u002Frequirements\">prérequis d'Immich\u003C\u002Fa>, \u003Ca href=\"https:\u002F\u002Fdocs.immich.app\u002Fadministration\u002Fbackup-and-restore\">sauvegarde et restauration d'Immich\u003C\u002Fa>, \u003Ca href=\"https:\u002F\u002Fjellyfin.org\u002Fdocs\u002Fgeneral\u002Fadministration\u002Fhardware-selection\u002F\">choix du matériel pour Jellyfin\u003C\u002Fa>, \u003Ca href=\"https:\u002F\u002Fjellyfin.org\u002Fdocs\u002Fgeneral\u002Fpost-install\u002Ftranscoding\u002F\">transcodage Jellyfin\u003C\u002Fa>, \u003Ca href=\"https:\u002F\u002Fwww.navidrome.org\u002Fdocs\u002Finstallation\u002Fdocker\u002F\">Navidrome avec Docker\u003C\u002Fa> et \u003Ca href=\"https:\u002F\u002Fcaddyserver.com\u002Fdocs\u002Fautomatic-https\">le HTTPS automatique de Caddy\u003C\u002Fa>.\n\nPour choisir un autre proxy que Caddy, lisez \u003Ca href=\"\u002Fblog\u002Fchoisir-reverse-proxy-vps-caddy-traefik-nginx\">notre comparatif Caddy, Traefik et Nginx Proxy Manager\u003C\u002Fa>. Si vous quittez Plex, la démarche est détaillée dans \u003Ca href=\"\u002Fblog\u002Fplex-securite-migration-jellyfin-navidrome-vps\">notre guide de migration vers Jellyfin et Navidrome\u003C\u002Fa>.","Un VPS qui grandit avec votre médiathèque","Avec un VPS ServOrbit.com, vous avez l'accès root, l'IPv4 dédiée, le SSD NVMe et le choix de la distribution. Quand la bibliothèque grossit, la scalabilité verticale ajoute RAM et disque sans réinstaller. L'option administration VPS est disponible.","Voir les VPS Cloud","\u002Fvps-cloud",[185,203,222],{"id":186,"slug":187,"slugs":188,"title":192,"excerpt":193,"readTime":194,"views":195,"isPinned":19,"publishedAt":196,"updatedAt":197,"category":198,"categories":199,"featuredImage":30,"bgImage":31,"posterImage":201,"relatedSolution":202},82,"heberger-immich",{"fr":187,"en":189,"ar":190,"es":191},"host-immich-on-your-own-vps","استضافة-immich-على-خادمك-الافتراضي-الخاص-vps","alojar-immich-en-un-vps","Héberger Immich sur votre propre VPS","Hébergez Immich sur votre VPS : alternative auto-hébergée à Google Photos avec sauvegarde mobile, reconnaissance faciale et SSL via Docker. Migration v3 incluse.",11,1,"2026-03-30T00:00:00+00:00","2026-09-23T15:23:17+00:00",{"id":23,"name":24,"slug":25,"color":26,"icon":27},[200],{"id":23,"name":24,"slug":25,"color":26,"icon":27},"\u002Fblog\u002Fcovers\u002Fheberger-immich-poster.svg",{"categorySlug":25,"appSlug":35},{"id":204,"slug":205,"slugs":206,"title":210,"excerpt":211,"readTime":212,"views":213,"isPinned":19,"publishedAt":214,"updatedAt":215,"category":216,"categories":217,"featuredImage":30,"bgImage":31,"posterImage":219,"relatedSolution":220},84,"heberger-jellyfin",{"fr":205,"en":207,"ar":208,"es":209},"host-jellyfin-on-your-own-vps","استضافة-jellyfin-على-خادمك-الافتراضي-الخاص-vps","alojar-jellyfin-en-un-vps","Héberger Jellyfin sur VPS : guide complet 2026","Déployez Jellyfin self-hosted sur VPS avec Docker, nginx HTTPS, plugins, stockage et transcodage. Guide 2026 face à la hausse des tarifs Plex.",10,8,"2026-03-28T00:00:00+00:00","2026-09-07T11:26:10+00:00",{"id":23,"name":24,"slug":25,"color":26,"icon":27},[218],{"id":23,"name":24,"slug":25,"color":26,"icon":27},"\u002Fblog\u002Fcovers\u002Fheberger-jellyfin-poster.svg",{"categorySlug":34,"appSlug":221},"jellyfin",{"id":223,"slug":224,"slugs":225,"title":229,"excerpt":230,"readTime":212,"views":231,"isPinned":19,"publishedAt":232,"updatedAt":215,"category":233,"categories":238,"featuredImage":30,"bgImage":31,"posterImage":240,"relatedSolution":30},227,"choisir-reverse-proxy-vps-caddy-traefik-nginx",{"fr":224,"en":226,"ar":227,"es":228},"caddy-traefik-or-nginx-proxy-manager-which-to-choose","caddy-أم-traefik-أم-nginx-proxy-manager-أيهما-تختار","elegir-reverse-proxy-vps-caddy-traefik-nginx","Caddy, Traefik ou Nginx Proxy Manager : lequel choisir ?","Guide de choix entre Caddy, Traefik et Nginx Proxy Manager pour self-hosters Docker sur VPS. Critères, tableau comparatif et recommandations par profil.",2,"2026-08-06T00:00:00+00:00",{"id":234,"name":235,"slug":236,"color":237,"icon":236},5,"Comparatif","comparatif","bg-info\u002F10 text-info",[239],{"id":234,"name":235,"slug":236,"color":237,"icon":236},"\u002Fblog\u002Fcovers\u002Fchoisir-reverse-proxy-vps-caddy-traefik-nginx-poster.svg",1793145958017]