Plex Media Server on Ubuntu Under Proxmox VE
Notes on installing Plex Media Server in an Ubuntu VM running under Proxmox VE.
See my notes here regarding how Proxmox VE (PVE) was installed on a Dell R610 to be used as an application server. These notes assume knowledge of the basic PVE configuration.
Basic Ubuntu Server Install in a PVE VM
I installed Ubuntu Server 16 LTE. The VM was configured in the following way:
Memory 16/32GB min/max Processors 1 socket, 8 cores Hard Disk(scsi0) local-lvm, size=32GB Network Device(net0) virtio, bridge=vmbr0
Network Configuration
The network device that PVE provides to the Ubuntu VM is named ens18
.
I removed the ens18
configuration that was created during the install and
replaced it with the following (in /etc/network/interfaces
):
auto ens18 iface ens18 inet static address 192.168.88.32/24 gateway 192.168.88.1 dns-nameservers 192.168.88.1
This is a good reference, as is this.
Once this change is made, the following should make it take effect:
$ sudo ifdown ens18 && sudo ifup ens18
After the up/down i had intermittent problems with the IP disappearing and changing back to DHCP. Research said that there could be problems with starting/stopping interfaces and suggested reboot. After reboot, no problems.
Additional Tools
I also installed a few essential tools:
$ sudo apt-get install emacs-nox $ sudo apt isntall smbclient
Access Media Shares in Ubuntu
Since this is primarily being done to get a Plex Media Server up and running, access to media is, of course, a key part of the system. Since I will run Plex under Ubuntu, I configure Ubuntu to automatically mount the desired media at boot time.
Confirm Availability
I have a FreeNAS 11 server configured to provide media shares over SMB. The
IP of the SMB server is 192.168.88.22
.
Confirm that the media is available over SMB by:
$ smbclient -L //192.168.88.22 Domain=[WORKGROUP] OS=[Windows 6.1] Server=[Samba 4.6.8-GIT-7a91926] Sharename Type Comment --------- ---- ------- media Disk Plex Media pub Disk Public files IPC$ IPC IPC Service (FreeNAS 11 Server) khe Disk MacOS home directories Domain=[WORKGROUP] OS=[Windows 6.1] Server=[Samba 4.6.8-GIT-7a91926] Server Comment --------- ------- FILESSMB FreeNAS 11 Server
There is no point in proceding until the media share appears in the output.
Configure Ubuntu to Mount the Media
Create a Mount Point
Create a mount point for the media:
$ sudo mkdir /media/media
Mount the Media
I created a user 'guest' passwd 'guest' on FreeNAS.
The FreeNAS share media
allows guest user
(any guest, not just the above).
This will mount the share manually:
$ sudo mount -t cifs //192.168.88.22/Media /media/media \ -o username=guest,password=guest
References on how to configure automounting at boot can be found here, here, and here.
The correct way to do the automount is to put the unsername and password in
/etc/samba/user
with permissions 0400
. In my situation, it should
look like this:
username=guest password=guest
However, I had problems making this work properly. I finally punted and put
the following in /etc/fstab
:
//192.168.88.22/media /media/media cifs username=guest,password=guest,iocharset=utf8 0 0
Of course, as /etc/fstab
is generally readable, this is presents a
security problem. But as my network is tightly controlled with few users, I
can live with it.
The following command will re-read /etc/fstab
and mount anything that
isn't already mounted:
$ sudo mount -a
Once this is done, the share is available for use at /media/media
.
I currently don't have a local DNS server running. When I do, I'll return to my configuration and update it to use hostnames instead of IP addresses.
Install Plex Under Ubuntu
This article describes how to configure Ubuntu to use the Plex repo.
To install Plex, I did the following:
$ echo deb https://downloads.plex.tv/repo/deb ./public main \ | sudo tee /etc/apt/sources.list.d/plexmediaserver.list $ curl https://downloads.plex.tv/plex-keys/PlexSign.key | sudo apt-key add - $ sudo apt-get update $ sudo aptitude update $ sudo aptitude install plexmediaserver
Once this has been done, simply browse to 192.168.88.32:32400
to administer the Plex Server. That's a pretty painless process.
Install Docker Under Ubuntu
Notes on installing Docker; completely unrelated to Plex.
$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - $ sudo add-apt-repository \ "deb [arch=amd64] https://download.docker.com/linux/ubuntu \ $(lsb_release -cs) \ stable" $ sudo apt-get update $ sudo apt-get install docker-ce $ sudo usermod -aG khe # lets khe run docker without sudo
A reboot may be required for khe to be able to run without sudo, especially if running under a VM.
To test:
$ sudo docker run hello-world
Confifure docker to start at boot:
$ sudo systemctl enable docker
Backup the Ubuntu VM in PVE
Once all was configured, I backed up the VM in PVE.