Aliaksandr-Shliayeu / SPI

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

SPI Stack

Linux Media Delivery System Stack based on Docker for Raspberry Pi

About

Project goal is to simplify c deployment and maintenance on Raspberry Pi. This repository will allow you to dynamically choose needed containers and automate their deployment.

What is currently a part of the SPI Stack:

  • Bazarr : 6767
  • Bitwardenrs : 8100
  • Deluge - Torrent Client : 8112
  • Doublecommander : 8112
  • Emby - Media manager like Plex : 8096
  • EmbyStat - Statistics for Emby : 6555
  • Heimdall : 83
  • Jackett : 9117
  • JellyFin - Media manager OpenSource : 8096
  • Lidarr : 8686
  • NZBGet - Usenet groups client : 6789
  • Nginx-proxy-manager : 81
  • Ngnix - Web Server - for future use clear instance for now: 80
  • Pi-Hole - Private DNS sinkhole : 8089 WebPass: pi
  • Plex - Media manager : 32400/web
  • Portainer - GUI Docker Manager :9000
  • Pwndrop : 8123
  • Radarr : 7878
  • SABnzbd - Usenet groups client : 8080
  • Sonarr : 8989
  • TVheadend - TV streaming server : 9981
  • Torrserver : 9080
  • Transmission - Torrent Client : 9091
  • qBittorrent - Torrent Client : 15080

Numbers after ":" identify a port that particular container will respond on, i.e. Portainer default port is :9000, point your browser it to your server IP adding :9000 at the end i.e. http://192.168.100.100:9000 you will see Portainer login page.

How to Use it?

Before you start using SPI, set your Raspberry Pi IP address to be static, it will make some things easier later on. Static IP address is not absolutely necessary just to try the project and find out if you like it, but i.e. if you would like to properly utilize pihole in your network - you will have to point your router to your RPi IP for DNS resolution.

  • install git using a command:
sudo apt-get install git
  • Clone the repository with:
git clone https://github.com/AlexandrShlyaeu/SPI.git ~/SPI

Do not change name of the folder on your local system it should stay as is for the script to work properly

  • Enter the directory and run:
cd ~/SPI
./deploy.sh

Menu

Install docker

First "Install docker" this might take a while. Process will install latest Docker and Docker-compose for ARM. When installation is completed you will be prompted to reboot, please do so before continuing.

Build SPI Stack

Next "Build SPI Stack", select docker containers that you would like to pull and deploy. You do not have to select them all, select only the one you will use. Selecting only the one you need will reduce RAM consumption on your Pi what might be a problem on RPi 3, not so much on RPi 4 I guess. I do not have RPi 4 so I was only able to test it on my old RPi 3B SBC

You might like to install Portainer among all the other containers - Portainer is a graphical interface that lets you manage Docker engine - very useful tool if you don’t want to use Docker CLI.

Docker commands

This small section contains few useful commands in case your Portainer is not started and you would like to get something done without the GUI.

Miscellaneous commands

There are three scripts that can be used in case you would like to disable swapping to your SD card. You might want to do it in order to extend life of your SD card. SD cards were not designed for intensive IO tasks, therefore using them like normal HDDs is not ideal. Swap file is used to offload your RAM in case of OS need to dump it somewhere. Swap will be quite often modify, what might wear out your SD card in a long run. In other hand if your OS is swapping a lot of data it means his RAM size is generally to small - this might be a case on RPi3 where we have only 1GB of RAM.

About


Languages

Language:Shell 100.0%