Compare commits
2 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 0edafb6a51 | |||
| 9a9f269699 |
@@ -7,6 +7,9 @@ Config/Prowlarr/*
|
|||||||
Config/Radarr/*
|
Config/Radarr/*
|
||||||
Config/Sonarr/*
|
Config/Sonarr/*
|
||||||
|
|
||||||
|
config/
|
||||||
|
|
||||||
|
|
||||||
*.log
|
*.log
|
||||||
*.pid
|
*.pid
|
||||||
*.sock
|
*.sock
|
||||||
|
|||||||
+57
-14
@@ -7,12 +7,21 @@ services:
|
|||||||
- PUID=1000
|
- PUID=1000
|
||||||
- PGID=1000
|
- PGID=1000
|
||||||
- TZ=America/Detroit
|
- TZ=America/Detroit
|
||||||
|
- NVIDIA_VISIBLE_DEVICES=all
|
||||||
|
- NVIDIA_DRIVER_CAPABILITIES=all
|
||||||
volumes:
|
volumes:
|
||||||
- "C:/Media Server/Config/Jellyfin:/config"
|
- "./config/jellyfin:/config"
|
||||||
- "M:/Media/Movies:/data/movies"
|
- "/home/npate/storage/media/movies:/data/movies"
|
||||||
- "M:/Media/TV Shows:/data/tvshows"
|
- "/home/npate/storage/media/tvshows:/data/tvshows"
|
||||||
ports:
|
ports:
|
||||||
- 8096:8096
|
- 8096:8096
|
||||||
|
deploy:
|
||||||
|
resources:
|
||||||
|
reservations:
|
||||||
|
devices:
|
||||||
|
- driver: nvidia
|
||||||
|
count: all
|
||||||
|
capabilities: [gpu]
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
|
|
||||||
jellyseerr:
|
jellyseerr:
|
||||||
@@ -24,7 +33,7 @@ services:
|
|||||||
ports:
|
ports:
|
||||||
- 5055:5055
|
- 5055:5055
|
||||||
volumes:
|
volumes:
|
||||||
- "C:/Media Server/Config/Jellyseer:/app/config"
|
- "./config/jellyseerr:/app/config"
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
|
|
||||||
sonarr:
|
sonarr:
|
||||||
@@ -35,9 +44,9 @@ services:
|
|||||||
- PGID=1000
|
- PGID=1000
|
||||||
- TZ=America/Detroit
|
- TZ=America/Detroit
|
||||||
volumes:
|
volumes:
|
||||||
- "C:/Media Server/Config/Sonarr:/config"
|
- "./config/sonarr:/config"
|
||||||
- "M:/Media/TV Shows:/data/tvshows"
|
- "/home/npate/storage/media/tvshows:/data/tvshows"
|
||||||
- "M:/Media/Downloads:/downloads"
|
- "/home/npate/storage/media/downloads:/downloads"
|
||||||
ports:
|
ports:
|
||||||
- 8989:8989
|
- 8989:8989
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
@@ -50,9 +59,9 @@ services:
|
|||||||
- PGID=1000
|
- PGID=1000
|
||||||
- TZ=America/Detroit
|
- TZ=America/Detroit
|
||||||
volumes:
|
volumes:
|
||||||
- "C:/Media Server/Config/Radarr:/config"
|
- "./config/radarr:/config"
|
||||||
- "M:/Media/Movies:/data/movies"
|
- "/home/npate/storage/media/movies:/data/movies"
|
||||||
- "M:/Media/Downloads:/downloads"
|
- "/home/npate/storage/media/downloads:/downloads"
|
||||||
ports:
|
ports:
|
||||||
- 7878:7878
|
- 7878:7878
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
@@ -65,11 +74,45 @@ services:
|
|||||||
- PGID=1000
|
- PGID=1000
|
||||||
- TZ=America/Detroit
|
- TZ=America/Detroit
|
||||||
volumes:
|
volumes:
|
||||||
- "C:/Media Server/Config/Prowlarr:/config"
|
- "./config/prowlarr:/config"
|
||||||
ports:
|
ports:
|
||||||
- 9696:9696
|
- 9696:9696
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
|
|
||||||
|
gluetun:
|
||||||
|
image: qmcgaw/gluetun:latest
|
||||||
|
container_name: gluetun
|
||||||
|
cap_add:
|
||||||
|
- NET_ADMIN
|
||||||
|
environment:
|
||||||
|
- VPN_SERVICE_PROVIDER=nordvpn
|
||||||
|
- VPN_TYPE=openvpn
|
||||||
|
- OPENVPN_USER=${NORDVPN_USER}
|
||||||
|
- OPENVPN_PASSWORD=${NORDVPN_PASSWORD}
|
||||||
|
- SERVER_COUNTRIES=${NORDVPN_SERVER_COUNTRIES:-United States}
|
||||||
|
- TZ=America/Detroit
|
||||||
|
volumes:
|
||||||
|
- "./config/gluetun:/gluetun"
|
||||||
|
ports:
|
||||||
|
- 8080:8080
|
||||||
|
restart: unless-stopped
|
||||||
|
|
||||||
|
qbittorrent:
|
||||||
|
image: lscr.io/linuxserver/qbittorrent:latest
|
||||||
|
container_name: qbittorrent
|
||||||
|
network_mode: "service:gluetun"
|
||||||
|
depends_on:
|
||||||
|
- gluetun
|
||||||
|
environment:
|
||||||
|
- PUID=1000
|
||||||
|
- PGID=1000
|
||||||
|
- TZ=America/Detroit
|
||||||
|
- WEBUI_PORT=8080
|
||||||
|
volumes:
|
||||||
|
- "./config/qbittorrent:/config"
|
||||||
|
- "/home/npate/storage/media/downloads:/downloads"
|
||||||
|
restart: unless-stopped
|
||||||
|
|
||||||
flaresolverr:
|
flaresolverr:
|
||||||
# DockerHub mirror flaresolverr/flaresolverr:latest
|
# DockerHub mirror flaresolverr/flaresolverr:latest
|
||||||
image: ghcr.io/flaresolverr/flaresolverr:latest
|
image: ghcr.io/flaresolverr/flaresolverr:latest
|
||||||
@@ -89,9 +132,9 @@ services:
|
|||||||
- PGID=1000
|
- PGID=1000
|
||||||
- TZ=Etc/UTC
|
- TZ=Etc/UTC
|
||||||
volumes:
|
volumes:
|
||||||
- "C:/Media Server/Config/Bazarr:/config"
|
- "./config/bazarr:/config"
|
||||||
- "M:/Media/Movies:/data/movies"
|
- "/home/npate/storage/media/movies:/data/movies"
|
||||||
- "M:/Media/TV Shows:/data/tvshows"
|
- "/home/npate/storage/media/tvshows:/data/tvshows"
|
||||||
ports:
|
ports:
|
||||||
- 6767:6767
|
- 6767:6767
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
|
|||||||
@@ -0,0 +1,9 @@
|
|||||||
|
# NordVPN credentials for Gluetun
|
||||||
|
# Get these from: https://my.nordaccount.com/dashboard/nordvpn/ -> Manual Setup
|
||||||
|
# These are *service* credentials, not your regular NordVPN login
|
||||||
|
NORDVPN_USER=
|
||||||
|
NORDVPN_PASSWORD=
|
||||||
|
|
||||||
|
# Optional: Comma-separated list of countries (e.g. "United States", "Canada", "Netherlands")
|
||||||
|
# Leave unset to use "United States"
|
||||||
|
# NORDVPN_SERVER_COUNTRIES=United States
|
||||||
Executable
+45
@@ -0,0 +1,45 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
# Install proprietary NVIDIA driver + NVIDIA Container Toolkit on Ubuntu (for Docker GPU).
|
||||||
|
# Run on the server: bash scripts/install-nvidia-stack.sh
|
||||||
|
# Reboot after completion, then: nvidia-smi
|
||||||
|
|
||||||
|
set -euo pipefail
|
||||||
|
|
||||||
|
echo "==> Updating apt"
|
||||||
|
sudo apt-get update
|
||||||
|
|
||||||
|
echo "==> Installing ubuntu-drivers-common"
|
||||||
|
sudo apt-get install -y ubuntu-drivers-common
|
||||||
|
|
||||||
|
echo "==> Detected devices / recommendations:"
|
||||||
|
ubuntu-drivers devices || true
|
||||||
|
|
||||||
|
echo "==> Installing recommended proprietary NVIDIA driver"
|
||||||
|
sudo ubuntu-drivers autoinstall
|
||||||
|
|
||||||
|
echo "==> Adding NVIDIA Container Toolkit repository"
|
||||||
|
sudo apt-get install -y curl gnupg2
|
||||||
|
curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey \
|
||||||
|
| sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg
|
||||||
|
curl -s -L https://nvidia.github.io/libnvidia-container/stable/deb/nvidia-container-toolkit.list \
|
||||||
|
| sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' \
|
||||||
|
| sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list
|
||||||
|
|
||||||
|
echo "==> Installing nvidia-container-toolkit"
|
||||||
|
sudo apt-get update
|
||||||
|
sudo apt-get install -y nvidia-container-toolkit
|
||||||
|
|
||||||
|
echo "==> Configuring Docker to use NVIDIA runtime"
|
||||||
|
sudo nvidia-ctk runtime configure --runtime=docker
|
||||||
|
sudo systemctl restart docker
|
||||||
|
|
||||||
|
echo ""
|
||||||
|
echo "Done. Reboot the server so the kernel loads the NVIDIA driver:"
|
||||||
|
echo " sudo reboot"
|
||||||
|
echo ""
|
||||||
|
echo "After reboot, verify:"
|
||||||
|
echo " nvidia-smi"
|
||||||
|
echo " docker run --rm --gpus all nvidia/cuda:12.6.3-base-ubuntu22.04 nvidia-smi"
|
||||||
|
echo ""
|
||||||
|
echo "Then recreate Jellyfin:"
|
||||||
|
echo " cd $(dirname "$(dirname "$(readlink -f "$0")")") && docker compose up -d jellyfin"
|
||||||
Reference in New Issue
Block a user