[{"data":1,"prerenderedAt":187},["ShallowReactive",2],{"seo-verification":3,"blog-migrate-plex-to-jellyfin-vps-guide-en":6},{"google":4,"bing":5},"EycwPY2XMyTkVzas3n1ygeNJFGAH513qrMjfDljzsMQ","",{"key":7,"data":8},"blog-migrate-plex-to-jellyfin-vps-guide-en",{"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":129,"ctaBody":130,"ctaButton":131,"ctaUrl":132,"relatedPosts":133},424,"migrate-plex-to-jellyfin-vps-guide",{"fr":12,"en":10,"ar":13,"es":14},"migrer-plex-vers-jellyfin-vps","نقل-plex-إلى-jellyfin-على-vps","migrar-plex-a-jellyfin-vps-guia","Migrating from Plex to Jellyfin on a VPS: the complete guide","Plex tripled its Lifetime Pass to $749 and paywalled remote streaming. Step-by-step guide to migrate to Jellyfin on your VPS without losing your libraries.",8,0,false,"2026-10-08T00:00:00+00:00","2026-10-08T23:30:51+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\u002Fmigrer-plex-vers-jellyfin-vps-poster.svg",{"categorySlug":34,"appSlug":35},"collaboration-productivity","jellyfin","Since July 2026, accessing your own files from outside your local network requires a Plex subscription or a lifetime pass at $749. Jellyfin, its open-source alternative, requires no account, no subscription, and installs on any VPS with root access. This guide covers the complete migration: stopping Plex, deploying Jellyfin, recovering your libraries and configuring remote streaming.",[38,42,53,56,78,82,120,123,126],{"type":39,"title":40,"body":41},"h2","Why leave Plex now","Plex long positioned itself as the de facto standard for personal media servers. The freemium model seemed reasonable: the local server worked for free, and advanced features like remote streaming or offline downloads were reserved for subscribers or Lifetime Pass holders.\n\nIn July 2026, the Lifetime Pass pricing was revised upward to $749. Simultaneously, remote streaming — the ability to watch your own files from another network — moved behind this paywall. A user who had set up their Plex server to access their library while traveling can no longer do so without paying.\n\nThis change reveals a structural dependency: even if your files remain on your own VPS, the features that make remote access usable are controlled by a centralized service. Jellyfin is developed under the GPL-2.0 license, with no mandatory account, no third-party relay server, and no paywalled functionality.",{"type":43,"title":44,"items":45},"ul","What Jellyfin offers compared to Plex",[46,47,48,49,50,51,52],"**No mandatory account** — the Jellyfin server works entirely without creating an account on a third-party service, neither locally nor remotely","**Remote streaming without subscription** — access from outside your local network is a core feature, not a paid option","**GPL-2.0 license** — the source code is auditable; the project cannot be acquired or shut down without the community being able to fork it","**Compatibility with the same clients** — Infuse, Jellyfin for Android TV, Swiftfin (iOS) and web clients cover the same use cases as Plex","**No telemetry by default** — Jellyfin does not send usage data to a central service, unlike Plex which sends playback statistics","**Metadata from the same sources** — TheMovieDB and TheTVDB are used by Jellyfin as by Plex; your libraries will rebuild with the same posters and the same entries","**Hardware transcoding on VPS** — VAAPI, NVENC and QuickSync are supported as long as the VPS processor or graphics card exposes them",{"type":39,"title":54,"body":55},"Prerequisites before starting","This guide assumes you have a Linux VPS (Debian 12 or Ubuntu 22.04 recommended), root access via SSH, and that your media files are already stored on this server or mounted from network storage. Plan for at least 2 vCPU and 2 GB RAM for solo use; for multiple simultaneous users with transcoding, 4 vCPU and 4 GB are more appropriate.\n\nDocker and Docker Compose must be installed. If not yet done, the official installation command works on both distributions. A domain name pointing to your VPS IP is required to expose Jellyfin via HTTPS — without it, some clients refuse to connect or display security warnings.\n\nKeep your Plex instance running until the end of the migration: you will need to check the structure of your libraries and note the exact paths to your media folders.",{"type":57,"title":58,"steps":59},"steps","Migration step by step",[60,63,66,69,72,75],{"title":61,"body":62},"Note the structure of your Plex libraries","Open the Plex web interface, go to Settings → Libraries and note for each library: its name (Movies, TV Shows, Music...) and the associated folder path(s). These are the same paths you will declare to Jellyfin — no file movement is necessary.\n\nAlso note whether any libraries point to NFS or CIFS-mounted folders: these mounts must be active at Jellyfin startup for the initial scan to succeed.",{"title":64,"body":65},"Create Jellyfin configuration directories","Connect to your VPS via SSH and create the working directories:\n\nThese two folders will contain respectively the Jellyfin database (accounts, preferences, playback history) and the transcoding cache. Your media remain at their current location — do not move them.",{"title":67,"body":68},"Write the Docker Compose file","Create `\u002Fopt\u002Fjellyfin\u002Fdocker-compose.yml` with the following content, adapting `\u002Fmnt\u002Fmedia` to the actual path of your files:\n\nThe `:ro` (read-only) flag on the media volume is good practice: Jellyfin never needs to write to your files. Exposing the port only on `127.0.0.1` prevents the service from being directly accessible without TLS — the reverse proxy will handle public exposure.",{"title":70,"body":71},"Start Jellyfin and create the administrator account","Start the container:\n\nOpen `http:\u002F\u002Fyour-ip:8096` in a browser from your local machine (via SSH tunnel if necessary). The wizard asks you to choose a language, create a **local** administrator account — no external email address or Jellyfin account is required — then to declare your libraries. Point exactly to the same paths noted in step 1.",{"title":73,"body":74},"Configure the HTTPS reverse proxy","For secure remote access, you need a reverse proxy that terminates TLS and forwards requests to Jellyfin on port 8096. With nginx, create `\u002Fetc\u002Fnginx\u002Fsites-available\u002Fjellyfin`:\n\nEnable the site and reload nginx. Obtain a Let's Encrypt certificate with `certbot --nginx -d media.your-domain.com`. Then return to Jellyfin settings (Dashboard → Networking) to declare the public URL `https:\u002F\u002Fmedia.your-domain.com`.",{"title":76,"body":77},"Stop Plex and verify the migration","Once Jellyfin responds correctly from the outside and your libraries are scanned, stop Plex. On a Docker deployment:\n\nVerify that Jellyfin resolves metadata correctly on a few titles: posters present, synopsis, release date. If files remain without metadata, check their naming — Jellyfin follows the `Title (Year).ext` convention for movies and `Series\u002FSeason N\u002FTitle S0NE0N.ext` for series. Clicking \"Scan library files\" on the library forces a new scan.",{"type":79,"title":80,"body":81},"tip","Create local user accounts for your family or friends","Jellyfin supports multiple user accounts, each with its own visible libraries, playback history and quality preferences. Create one account per person under Dashboard → Users: none of these accounts requires an email address or external validation. Each user installs the Jellyfin app on their TV or phone, enters the URL of your server and their local credentials — that is all.",{"type":83,"title":84,"headers":85,"rows":89},"comparison","Plex vs Jellyfin: key features after the July 2026 paywall",[86,87,88],"Feature","Plex (free tier)","Jellyfin",[90,93,97,101,105,108,112,116],[91,92,92],"Local streaming (local network)","Included",[94,95,96],"Remote streaming (outside local network)","$749 Lifetime Pass required","Included at no extra cost",[98,99,100],"Mandatory account","Yes (Plex.tv)","No",[102,103,104],"License","Proprietary","GPL-2.0 (open source)",[106,107,92],"Offline downloads","Lifetime Pass required",[109,110,111],"Hardware transcoding","Lifetime Pass required for some formats","Included (VAAPI, NVENC, QuickSync)",[113,114,115],"Available clients","iOS, Android, TV, web","iOS (Swiftfin), Android, TV, web, Infuse",[117,118,119],"Data sent to a third party","Playback statistics to Plex.tv","None by default",{"type":39,"title":121,"body":122},"Troubleshooting common errors","**Port 8096 does not respond after `docker compose up`.** Check that the container is running with `docker ps` and review logs with `docker logs jellyfin`. The most common error is a port conflict if a previous Jellyfin installation existed.\n\n**Metadata fails to load.** The initial scan can take from ten minutes to several hours depending on library size. Monitor progress under Dashboard → Activity. If files remain without posters after several hours, the issue is almost always file naming: rename according to the convention and relaunch a scan.\n\n**Remote access fails while the server responds locally.** Check three points in order: the firewall allows port 443 (`ufw allow 443`), DNS points to the correct VPS IP, and the `JELLYFIN_PublishedServerUrl` variable in Docker Compose matches exactly the URL declared in Jellyfin network settings.\n\n**CPU transcoding saturates at 100%.** Without hardware acceleration, a single 4K stream can saturate several cores. Enable VAAPI if your processor supports it: under Dashboard → Playback, select \"Video Acceleration API (VAAPI)\" and map the `\u002Fdev\u002Fdri\u002FrenderD128` device in your Compose file. Also encourage your users to enable Direct Play in their client settings when bandwidth allows.",{"type":124,"body":125},"p","The steps above cover a standard deployment on Debian or Ubuntu with Docker. If you use a different distribution or container manager (Podman, for example), the logic remains the same — only the Docker installation commands change. The official Jellyfin documentation (\u003Ca href=\"https:\u002F\u002Fdocs.jellyfin.org\">docs.jellyfin.org\u003C\u002Fa>) maintains installation guides for each environment, including native Debian packages and official Docker images.",{"type":39,"title":127,"body":128},"Going further with your Jellyfin server","Once Jellyfin is stable, a few extensions are worth exploring. The **Jellyseerr** plugin (a fork of Overseerr) adds a content request interface: your users submit what they want to watch, and you can approve requests from a centralized dashboard.\n\nFor music collections, the **Musicbrainz** plugin enriches metadata well beyond cover art: genre tags, release dates, related artists. Playback on connected speakers is possible via the built-in DLNA plugin or via Chromecast from the web application.\n\nFinally, if you host other services on the same VPS, Jellyfin integrates naturally into a multi-container Docker stack with its own internal network — it never exposes its port directly; only the reverse proxy is visible from outside. This is a clean architecture that scales from a single user to a dozen.","A VPS with root access for your Jellyfin server","Jellyfin requires root access to configure Docker, the reverse proxy and media volumes. A VPS with a dedicated IPv4 gives you full control over your infrastructure, with no bandwidth restrictions imposed by the software.","Choose a Cloud VPS","\u002Fvps-cloud",[134,152,170],{"id":135,"slug":136,"slugs":137,"title":141,"excerpt":142,"readTime":143,"views":144,"isPinned":19,"publishedAt":145,"updatedAt":146,"category":147,"categories":148,"featuredImage":30,"bgImage":31,"posterImage":150,"relatedSolution":151},84,"host-jellyfin-on-your-own-vps",{"fr":138,"en":136,"ar":139,"es":140},"heberger-jellyfin","استضافة-jellyfin-على-خادمك-الافتراضي-الخاص-vps","alojar-jellyfin-en-un-vps","Self-Hosting Jellyfin on a VPS: Complete 2026 Guide","Deploy Jellyfin on your own VPS with Docker, nginx, HTTPS, plugins, storage options and hardware transcoding. Full guide updated for 2026.",10,5,"2026-03-28T00:00:00+00:00","2026-09-07T11:26:10+00:00",{"id":23,"name":24,"slug":25,"color":26,"icon":27},[149],{"id":23,"name":24,"slug":25,"color":26,"icon":27},"\u002Fblog\u002Fcovers\u002Fheberger-jellyfin-poster.svg",{"categorySlug":34,"appSlug":35},{"id":153,"slug":154,"slugs":155,"title":159,"excerpt":160,"readTime":17,"views":18,"isPinned":19,"publishedAt":161,"updatedAt":162,"category":163,"categories":167,"featuredImage":30,"bgImage":31,"posterImage":169,"relatedSolution":30},98,"jellyfin-vs-plex-which-self-hosted-media-server",{"fr":156,"en":154,"ar":157,"es":158},"jellyfin-vs-plex","jellyfin-مقابل-plex-أي-خادم-وسائط-مستضاف-ذاتيا","jellyfin-vs-plex-que-servidor-multimedia-autoalojado","Jellyfin vs Plex: Which Self-Hosted Media Server?","Jellyfin vs Plex: complete comparison to choose your self-hosted media server on a VPS — Docker deployment, troubleshooting, and Jellyfin 12 migration.","2026-03-14T00:00:00+00:00","2026-09-10T13:10:43+00:00",{"id":144,"name":164,"slug":165,"color":166,"icon":165},"Comparison","comparatif","bg-info\u002F10 text-info",[168],{"id":144,"name":164,"slug":165,"color":166,"icon":165},"\u002Fblog\u002Fcovers\u002Fjellyfin-vs-plex-poster.svg",{"id":171,"slug":172,"slugs":173,"title":177,"excerpt":178,"readTime":179,"views":180,"isPinned":19,"publishedAt":181,"updatedAt":146,"category":182,"categories":183,"featuredImage":30,"bgImage":31,"posterImage":185,"relatedSolution":186},292,"migrating-from-plex-to-jellyfin-after-the-july-2026-paywall",{"fr":174,"en":172,"ar":175,"es":176},"migrer-plex-vers-jellyfin-2026","الهجرة-من-plex-إلى-jellyfin-بعد-paywall-يوليو-2026","migrar-de-plex-a-jellyfin-2026","Migrating from Plex to Jellyfin after the July 2026 paywall","Plex put remote streaming behind a paywall in July 2026. Here's how to migrate to Jellyfin on your VPS: library intact, same clients, remote access restored.",9,1,"2026-08-22T00:00:00+00:00",{"id":23,"name":24,"slug":25,"color":26,"icon":27},[184],{"id":23,"name":24,"slug":25,"color":26,"icon":27},"\u002Fblog\u002Fcovers\u002Fmigrer-plex-vers-jellyfin-2026-poster.svg",{"categorySlug":34,"appSlug":35},1791502594803]