Skip to content

PerPlexed

slunat edited this page Mar 30, 2024 · 2 revisions

This guide covers the manual install of PerPlexed without the requirement for Docker.

Prep

  1. Create your container with 1 core, minimum 5GB storage and minimum 3GB RAM. You can reduce the ram allocation to 512MB after the build process is complete. This particular guide was created using a Debian 12 container.
  2. Start your container and run the following commands to get your container up to date and install the required dependencies

apt-get update && apt-get upgrade -y

apt install unzip

apt install nodejs npm

Install

  1. Pull the files using wget https://github.com/Ipmake/PerPlexed/archive/refs/heads/main.zip
  2. Unzip the downloaded archive using unzip main.zip
  3. Enter the extracted directory by entering cd PerPlexed-main/frontend
  4. Enter the following two commands. This process will take a while so be patient. npm install npm run build
  5. Enter cd.. to move to the previous folder
  6. Copy the files over to the required directory using cp -r frontend/build backend/www
  7. Enter the backed folder using cd backend
  8. Run the command npm install
  9. Run the following command, making sure to subtitute the IP address with the IP of your Plex server PLEX_SERVER=http://192.168.10.1:32400 npm run dev
  10. You should now be able to access the webpage by accessing http://localip:3000 where localip is the IP address of the system or container you are running perplexed on. If you dont know the IP address of your container, you can find it by running ip address

Setting it to start on boot

  1. First make sure you are at the home directory by entering cd
  2. Next, create and enter a new "scripts" directory to store your script file by entering mkdir scripts && cd scripts
  3. Create and enter the editor for your script file. You can call this whatever you want, just make sure you reference it the same in the later steps. We will call it "pp". nano pp.sh
  4. Enter the below into the script file

#! /bin/bash

cd PerPlexed-main/backend

PLEX_SERVER=http://192.168.10.1:32400 npm run dev make sure you use your plex server IP you used in step 9 here

  1. Press ctrl+x to save the file
  2. Now we need to make the script file executable, which we can do by entering chmod +x pp.sh
  3. The script is now ready to use, we now need to schedule the script to execute at boot. To do this, we will add it to our crontab by entering crontab -e. Enter option 1 if promoted for a choice of editor.
  4. At the bottom of this file, enter the line @reboot scripts/pp.sh. This will schedule the script to execute whenever the container starts up.
  5. Press ctrl+x to save the changes to the crontab file. Reboot the container and check if you are able to access the web interface for PerPlexed without needing to interact with the system.

Cleanup

Once you have got everything up and running, you no longer require the zip file you pulled from GitHub. TO remove this, make sure you are at your users root directory and enter rm main.zip

I would also suggest reducing the RAM allocation for your container as it will happily run with only 0.5GB of RAM. The additional RAM was only required for the initial build.