Article

Installing Plex Media Server on CentOS 7

Published on: Fri, Jan 4, 2019 at 11:10 am EST
CentOS Linux Guides Server Apps Streaming

Plex is a media server that allows you to stream music, home videos, and more to your devices. This article will guide you through the installation of Plex on your CentOS 7 (64-bit) server.

Note: Plex can be quite demanding (resource-wise) during transcoding (that is, converting from different media formats and video resolutions) operations. If you do not plan on having devices that will request a different resolution or format than that of your media, you can use a regular instance. Otherwise, transcoding may require you to get a larger amount of RAM and potentially one of Vultr's dedicated instances.

Prerequisites

If you will be transcoding media, the recommended specifications are:

  • two or more cores
  • four or more gigabytes of RAM

This is about equivalent to Vultr's 120GB Dedicated instance

If you won't be transcoding any media, you can get away with as little as:

  • one CPU core or more
  • one gigabyte of RAM or more

Apart from having these recommended server specifications, you will need a 64-bit system running CentOS 7. Also, you will need:

  • root access
  • yum
  • nano or vim (this tutorial will be using nano)
  • wget

Installation

Before we begin, we will need to update our system:

yum update -y

Add Plex's repository:

nano /etc/yum.repos.d/plex.repo

Paste the following:

[Plex]
name=Plex
baseurl=https://downloads.plex.tv/repo/rpm/$basearch/
enabled=1
gpgkey=https://downloads.plex.tv/plex-keys/PlexSign.key
gpgcheck=1

Save, (CTRL + O), and exit, (CTRL + X).

Install Plex using yum:

yum install plexmediaserver -y

Make Plex start automatically on boot:

systemctl enable plexmediaserver

Start Plex:

systemctl start plexmediaserver

Configure firewalld to allow Plex through the firewall:

nano /etc/firewalld/services/plex.xml

Paste the following:

<?xml version="1.0" encoding="utf-8"?>
<service>
  <short>plex</short>
  <description>Ports required by Plex.</description>
  <port protocol="tcp" port="32400"></port>
  <port protocol="tcp" port="32469"></port>
  <port protocol="tcp" port="8324"></port>
  <port protocol="tcp" port="3005"></port>
  <port protocol="udp" port="32414"></port>
  <port protocol="udp" port="32413"></port>
  <port protocol="udp" port="32412"></port>
  <port protocol="udp" port="32410"></port>
  <port protocol="udp" port="1900"></port>
  <port protocol="udp" port="5353"></port>
</service>

Save and exit.

Tell firewalld about our new firewall rules:

firewall-cmd --add-service=plex --permanent

Reload firewalld for the new rules to take effect:

firewall-cmd --reload

Configuring Plex

Now that we've successfully installed Plex, head over to http://(YOUR_SERVER_IP):32400

You will see a "welcome" screen that resembles the following image:

Click on any of the buttons and complete the registration. Once you complete the registration, you'll be redirected to your dashboard.

Common Errors

If you see the "Setup is not allowed for shared servers" error during the setup, you'll need to create a SSH tunnel to your server. This can be accomplished with the instructions stated in the "Client setup" section of the Setup Plex Media Server article.

Want to contribute ?

You could earn up to $300 by adding new articles