Plex Server showing movie library

Plex Media Servers are great for storing and accessing all your movies, tv shows, and other media. Unfortunately, Plex Server hardware can be expensive, electricity intensive, or both. To reduce both bills,  use a Raspberry Pi for a Plex Server.

What You Need to Know

Running a Raspberry Pi as a Plex Server does come with several benefits. It won’t take up as much room as a server or a full-size PC. It also will use less electricity, even when idle all day. Best of all, it costs less than most other hardware capable of working as a server.

There are some downsides to be aware of, though. The Raspberry Pi 3 has an ARM processor that just doesn’t have the power to support transcoding. So when you are setting up your videos, you are going to want to choose MKV as your video format. That will usually bypass the need for transcoding. (Just about every Plex player supports MKV without transcoding on the fly, but a few smart TVs might have problems.)

Even then, while you’ll be able to watch standard Blu-ray quality locally, you probably won’t be able to view these videos remotely. And 4K Videos are likely not going to play well either. Also, keep in mind that this is not officially supported, and you’ll need to update the server software manually.

But once you account for those potential pitfalls, the Raspberry Pi does make a competent Plex Media Server.

Getting Started

Compared to using a dedicated full PC or an NVIDIA Shield as a Plex Server, the costs to get started with a Raspberry Pi are relatively low. You’ll need:

Optionally you might want to consider a case and a heat sink for the Raspberry Pi. You’ll need a monitor, keyboard, and mouse to get everything in place, but after that, you can run the Pi headless.

To start with, you will want to set your Raspberry Pi up following the standard steps. The easiest thing to do is get a copy of NOOBS to install the latest version of Raspbian.

Once you have Raspbian installed, you’ll do nearly everything else in the terminal. You don’t need to be familiar with terminal, though; you can copy and paste the commands below.

Configuring The Software

RaspberryPi terminal window

The first thing to do is ensure the Raspberry Pi is fully up to date. So run the following commands:

sudo apt-get update
sudo apt-get upgrade

And provide the root password when prompted. Alternatively, you can use SU and skip all the sudo entries.

After all your updates are finished, you’ll need to install the “apt-transport-https” package. This allows Plex Server from an HTTPS source. Run this command:

sudo apt-get install apt-transport-https

The next step is to add the crypto key for the dev2day website (the source of this software):

wget -O - https://dev2day.de/pms/dev2day-pms.gpg.key | apt-key add -

terminal command: wget -O - https://dev2day.de/pms/dev2day-pms.gpg.key | apt-key add -

Run the following command to add the dev2day repository to the package source list:

echo "deb https://dev2day.de/pms/ stretch main" >> /etc/apt/sources.list.d/pms.list

terminal command: echo "deb https://dev2day.de/pms/ stretch main" >> /etc/apt/sources.list.d/pms.list

Now you’ve added the dev2day repository, it’s time to update the package list:

sudo apt-get update

Now, you’re ready to install Plex Media Server. Just type the following command and hit Enter:

sudo apt-get install plexmediaserver-installer

After the Plex Server software finishes installing, there are just a few more details to take care of.

Final Details

To avoid any permissions issue,  it’s best to make Plex run under the Pi user. Type the following command and hit Enter:

sudo nano /etc/default/plexmediaserver.prev

You should see a line that says:

PLEX_MEDIA_SERVER_USER=plex

Change the word “plex” to “pi” and then use Ctrl+X to close the file. Choose to save and overwrite the file.

terminal window: changing Plex to Pi as the user

For reliable remote access, you’ll want a static IP. Once the Raspberry Pi has rebooted, open the terminal and run this command:

hostname -I

That’s the current IP address, write that down or type it into a text editor.

Now open the cmdline.txt file with the following command:

sudo nano /boot/cmdline.txt

At the bottom of the file, type in the following:

ip=TheIPYouWroteDown

terminal window: changing the ip address

Using the IP you wrote down previously. Then use Ctrl+X to close the file and save it.

Now reboot your Raspberry Pi with the following command:

sudo reboot

And your Raspberry Pi is now a functioning Plex Server. You’re ready to head to plext.tv/web on any browser to detect and associate the Plex Server to your account. Then you’ll need to configure your Raspberry Pi to recognize an external drive, rip your DVDs, or Blu-Rays, and then name your media files per the Plex guidelines.

Once you have everything in place, you’ll have access to your media collection on just about any device, from your phone to your game console. It’s a great Plex Server option that won’t break the bank.

Josh Hendrickson Josh Hendrickson
Josh Hendrickson has worked in IT for nearly a decade, including four years spent repairing and servicing computers for Microsoft. He’s also a smarthome enthusiast who built his own smart mirror with just a frame, some electronics, a Raspberry Pi, and open-source code.
Read Full Bio »