Add Jellyfin and Plex #51

Merged
rogs merged 10 commits from add-jellyfin-plex into master 2023-01-23 17:18:00 -03:00
4 changed files with 69 additions and 23 deletions

View File

@ -13,7 +13,9 @@ Website: [[https://yams.media][https://yams.media]]
This script installs the following software: This script installs the following software:
- [[https://sonarr.tv/][Sonarr]] - [[https://sonarr.tv/][Sonarr]]
- [[https://radarr.video/][Radarr]] - [[https://radarr.video/][Radarr]]
- [[https://jellyfin.org/][Jellyfin]]
- [[https://emby.media/][Emby]] - [[https://emby.media/][Emby]]
- [[https://www.plex.tv/][Plex]]
- [[https://www.qbittorrent.org/][qBittorrent]] - [[https://www.qbittorrent.org/][qBittorrent]]
- [[https://www.bazarr.media/][Bazarr]] - [[https://www.bazarr.media/][Bazarr]]
- [[https://github.com/Prowlarr/Prowlarr][Prowlarr]] - [[https://github.com/Prowlarr/Prowlarr][Prowlarr]]
@ -120,7 +122,9 @@ They are the ones doing the real work, I just created a docker-compose file and
- [[https://www.linuxserver.io/donate][linuxserver.io donations page]] - [[https://www.linuxserver.io/donate][linuxserver.io donations page]]
- [[https://sonarr.tv/donate][Sonarr donations page]] - [[https://sonarr.tv/donate][Sonarr donations page]]
- [[https://radarr.video/donate][Radarr donations page]] - [[https://radarr.video/donate][Radarr donations page]]
- [[https://opencollective.com/jellyfin][Jellyfin donations page]]
- [[https://emby.media/premiere.html][Emby premier page]] (Recommended! I personally use this service) - [[https://emby.media/premiere.html][Emby premier page]] (Recommended! I personally use this service)
- [[https://www.plex.tv/plex-pass/][Plex pass page]]
- [[https://www.qbittorrent.org/donate][qBittorrent donations page]] - [[https://www.qbittorrent.org/donate][qBittorrent donations page]]
- [[https://www.paypal.com/donate/?cmd=_s-xclick&hosted_button_id=XHHRWXT9YB7WE&source=url][Bazarr donations page]] - [[https://www.paypal.com/donate/?cmd=_s-xclick&hosted_button_id=XHHRWXT9YB7WE&source=url][Bazarr donations page]]
- [[https://www.paypal.me/qmcgaw][gluetun donations page]] - [[https://www.paypal.me/qmcgaw][gluetun donations page]]
@ -128,23 +132,23 @@ They are the ones doing the real work, I just created a docker-compose file and
Just let them know YAMS sent you there 😎 Just let them know YAMS sent you there 😎
* todo * todo [1/11]
:PROPERTIES: :PROPERTIES:
:ID: eba4712e-fa8a-42c8-bc32-b593141c99a4 :ID: eba4712e-fa8a-42c8-bc32-b593141c99a4
:END: :END:
(not in order) (not in order)
- Support for multiple media servers (Jellyfin and Plex). [Working on it ✅] - [X] Support for multiple media servers (Jellyfin and Plex).
- Readd Jackett as advanced settings. - [ ] Readd Jackett as advanced settings.
- Support for Wireguard. - [ ] Support for Wireguard.
- Support for qBittorrent themes (VueTorrent). - [ ] Support for qBittorrent themes (VueTorrent).
- Check [[https://filebrowser.org/][Filebrowser]]. - [ ] Check [[https://filebrowser.org/][Filebrowser]].
- Investigate [[https://github.com/FlareSolverr/FlareSolverr][FlareSolverr]]. - [ ] Investigate [[https://github.com/FlareSolverr/FlareSolverr][FlareSolverr]].
- Check [[https://github.com/Unpackerr/unpackerr][unpackerr]]. - [ ] Check [[https://github.com/Unpackerr/unpackerr][unpackerr]].
- Check [[https://github.com/Flemmarr/Flemmarr][Flemarr]]. - [ ] Check [[https://github.com/Flemmarr/Flemmarr][Flemarr]].
- Add a dashboard like [[https://docs.organizr.app/installation/installing-organizr][Organizr]]. - [ ] Add a dashboard like [[https://docs.organizr.app/installation/installing-organizr][Organizr]].
- Add [[https://www.portainer.io/][Portainer]]. - [ ] Add [[https://www.portainer.io/][Portainer]].
- Check usenet. - [ ] Check usenet.
* Special thanks * Special thanks
:PROPERTIES: :PROPERTIES:
@ -153,7 +157,9 @@ Just let them know YAMS sent you there 😎
- [[https://info.linuxserver.io/][linuxserver.io]] for their amazing docker images - [[https://info.linuxserver.io/][linuxserver.io]] for their amazing docker images
- [[https://sonarr.tv/][Sonarr]] - [[https://sonarr.tv/][Sonarr]]
- [[https://radarr.video/][Radarr]] - [[https://radarr.video/][Radarr]]
- [[https://jellyfin.org/][Jellyfin]]
- [[https://emby.media/][Emby]] - [[https://emby.media/][Emby]]
- [[https://www.plex.tv/][Plex]]
- [[https://www.qbittorrent.org/][qBittorrent]] - [[https://www.qbittorrent.org/][qBittorrent]]
- [[https://www.bazarr.media/][Bazarr]] - [[https://www.bazarr.media/][Bazarr]]
- [[https://github.com/Prowlarr/Prowlarr][Prowlarr]] - [[https://github.com/Prowlarr/Prowlarr][Prowlarr]]

Binary file not shown.

View File

@ -1,24 +1,26 @@
version: "3" version: "3"
services: services:
# Emby is used to serve your media to the client devices # <media_service> is used to serve your media to the client devices
emby: <media_service>:
image: ghcr.io/linuxserver/emby image: lscr.io/linuxserver/<media_service>
container_name: emby container_name: <media_service>
#network_mode: host # plex
environment: environment:
- PUID=<your_PUID> - PUID=<your_PUID>
- PGID=<your_PGID> - PGID=<your_PGID>
- VERSION=docker
volumes: volumes:
- <media_folder>/movies:/data/movies - <media_folder>/movies:/data/movies
- <media_folder>/tvshows:/data/tvshows - <media_folder>/tvshows:/data/tvshows
- <install_location>/config/emby:/config - <install_location>/config/<media_service>:/config
ports: ports:
- 8096:8096 - 8096:8096
restart: unless-stopped restart: unless-stopped
# qBitorrent is used to download torrents # qBitorrent is used to download torrents
qbittorrent: qbittorrent:
image: ghcr.io/linuxserver/qbittorrent image: lscr.io/linuxserver/qbittorrent
container_name: qbittorrent container_name: qbittorrent
environment: environment:
- PUID=<your_PUID> - PUID=<your_PUID>
@ -34,7 +36,7 @@ services:
# Sonarr is used to query, add downloads to the download queue and index TV shows # Sonarr is used to query, add downloads to the download queue and index TV shows
sonarr: sonarr:
image: ghcr.io/linuxserver/sonarr image: lscr.io/linuxserver/sonarr
container_name: sonarr container_name: sonarr
environment: environment:
- PUID=<your_PUID> - PUID=<your_PUID>
@ -49,7 +51,7 @@ services:
# Radarr is used to query, add downloads to the download queue and index Movies # Radarr is used to query, add downloads to the download queue and index Movies
radarr: radarr:
image: ghcr.io/linuxserver/radarr image: lscr.io/linuxserver/radarr
container_name: radarr container_name: radarr
environment: environment:
- PUID=<your_PUID> - PUID=<your_PUID>
@ -64,7 +66,7 @@ services:
# Bazarr is used to download and categorize subtitles # Bazarr is used to download and categorize subtitles
bazarr: bazarr:
image: ghcr.io/linuxserver/bazarr image: lscr.io/linuxserver/bazarr
container_name: bazarr container_name: bazarr
environment: environment:
- PUID=<your_PUID> - PUID=<your_PUID>
@ -80,7 +82,7 @@ services:
# Prowlarr is our torrent indexer/searcher. Sonarr/Radarr use Prowlarr as a # Prowlarr is our torrent indexer/searcher. Sonarr/Radarr use Prowlarr as a
# source # source
prowlarr: prowlarr:
image: lscr.io/linuxserver/prowlarr:latest image: lscr.io/linuxserver/prowlarr
container_name: prowlarr container_name: prowlarr
environment: environment:
- PUID=<your_PUID> - PUID=<your_PUID>
@ -112,3 +114,10 @@ services:
- OPENVPN_USER=<vpn_user> - OPENVPN_USER=<vpn_user>
- OPENVPN_PASSWORD=<vpn_password> - OPENVPN_PASSWORD=<vpn_password>
- SERVER_COUNTRIES=<vpn_country> - SERVER_COUNTRIES=<vpn_country>
# Watchtower is going to keep our instances updated
watchtower:
image: containrrr/watchtower
container_name: watchtower
volumes:
- /var/run/docker.sock:/var/run/docker.sock

View File

@ -57,7 +57,7 @@ running_services_location() {
echo "Sonarr: http://$host_ip:8989/" echo "Sonarr: http://$host_ip:8989/"
echo "Prowlarr: http://$host_ip:9696/" echo "Prowlarr: http://$host_ip:9696/"
echo "Bazarr: http://$host_ip:6767/" echo "Bazarr: http://$host_ip:6767/"
echo "Emby: http://$host_ip:8096/" echo "$media_service: http://$host_ip:$media_service_port/"
} }
# ============================================================================================ # ============================================================================================
@ -110,6 +110,31 @@ if [ $media_folder_correct == "n" ]; then
send_error_message "Media folder is not correct. Please, fix it and run the script again" send_error_message "Media folder is not correct. Please, fix it and run the script again"
fi fi
# Setting the preferred media service
echo
echo
echo
echo "Time to choose your media service."
echo "Your media service is the one responsible for serving your files to your network."
echo "By default, YAMS support 3 media services:"
echo "- jellyfin (recommended, easier)"
echo "- emby"
echo "- plex (advanced, always online, slower)"
read -p "Choose your media service [jellyfin]: " media_service
media_service=${media_service:-"jellyfin"}
media_service=$(echo "$media_service" | sed -e 's/\(.*\)/\L\1/')
media_service_port=8096
if [ "$media_service" == "plex" ]; then
media_service_port=32400
fi
if echo "emby plex jellyfin" | grep -qw "$media_service"; then
echo "YAMS is going to install \"$media_service\" on port \"$media_service_port\""
else
send_error_message "\"$media_service\" is not supported by YAMS. Are you sure you chose the correct service?"
fi
# Adding the VPN # Adding the VPN
echo echo
echo echo
@ -180,6 +205,12 @@ sed -i -e "s/<your_PGID>/$pgid/g" $filename
# Set media_folder # Set media_folder
sed -i -e "s;<media_folder>;$media_folder;g" $filename sed -i -e "s;<media_folder>;$media_folder;g" $filename
# Set media_service
sed -i -e "s;<media_service>;$media_service;g" $filename
if [ $media_service == "plex" ]; then
sed -i -e "s;#network_mode: host # plex;network_mode: host # plex;g" $filename
fi
# Set config folder # Set config folder
sed -i -e "s;<install_location>;$install_location;g" $filename sed -i -e "s;<install_location>;$install_location;g" $filename