Skip to content

Instantly share code, notes, and snippets.

@efazati
Last active January 6, 2025 18:31
Show Gist options
  • Save efazati/35772ee26e936f4e9fac4be345531988 to your computer and use it in GitHub Desktop.
Save efazati/35772ee26e936f4e9fac4be345531988 to your computer and use it in GitHub Desktop.
Media Center with Jellyfin - *arr and qbittorrent behind vpn docker compose
services:
vpn:
image: qmcgaw/gluetun
container_name: vpn
cap_add:
- NET_ADMIN
environment:
- VPN_SERVICE_PROVIDER=mullvad # e.g., protonvpn, nordvpn, mullvad
- VPN_TYPE=wireguard # or wireguard depending on your VPN
- WIREGUARD_PRIVATE_KEY=xxx=
- WIREGUARD_ADDRESSES=xxx
- DNS=xxx
- SERVER_COUNTRIES=xxx
# Add any other VPN-specific environment variables here
- TZ=Europe/Dublin
ports:
- 9092:9092 # qBittorrent WebUI
- 6881:6881 # qBittorrent
- 6881:6881/udp # qBittorrent
restart: unless-stopped
networks:
- media_home_network
qbittorrent:
image: linuxserver/qbittorrent:latest
container_name: qbittorrent
environment:
- PUID=1000
- PGID=1000
- TZ=Europe/Dublin
- WEBUI_PORT=9092
volumes:
- /share/Media/qbittorrent/downloads:/downloads
- /share/Media/qbittorrent/config:/config
network_mode: "service:vpn"
depends_on:
- vpn
radarr:
image: linuxserver/radarr
container_name: radarr
restart: always
# network_mode: "service:vpn"
ports:
- "7878:7878"
# network_mode: "host"
environment:
- TZ=Europe/Dublin
- PGID=1000
- PUID=1000
volumes:
- /share/Media/radarr:/config
- /share/Media/qbittorrent/downloads:/downloads
- /share/Media/jellyfin/movies:/movies
depends_on:
- "qbittorrent"
networks:
- media_home_network
sonarr:
image: linuxserver/sonarr
container_name: sonarr
restart: always
environment:
- TZ=Europe/Dublin
- PGID=1000
- PUID=1000
# network_mode: "service:vpn"
ports:
- "8989:8989"
# network_mode: "host"
volumes:
- /share/Media/sonarr/config:/config
- /share/Media/jellyfin/tv:/tv
- /share/Media/qbittorrent/downloads:/downloads
depends_on:
- "qbittorrent"
networks:
- media_home_network
bazarr:
image: linuxserver/bazarr
container_name: bazarr
environment:
- TZ=Europe/Dublin
- PGID=1000
- PUID=1000
volumes:
- /share/Media/bazarr:/config
- /share/Media/jellyfin/movies:/movies #optional
- /share/Media/jellyfin/tv:/tv #optional
ports:
- 6767:6767
# network_mode: "host"
restart: always
networks:
- media_home_network
prowlarr:
image: linuxserver/prowlarr:develop
container_name: prowlarr
restart: always
environment:
- TZ=Europe/Dublin
- PGID=1000
- PUID=1000
# network_mode: "service:vpn"
ports:
- "9696:9696"
# network_mode: "host"
cap_add:
- NET_ADMIN
volumes:
- /share/Media/prowlarr:/config
- /share/Media/qbittorrent/downloads:/downloads # transmission watch directory
jellyseerr:
image: fallenbagel/jellyseerr:latest
container_name: jellyseerr
environment:
- TZ=Europe/Dublin
- PGID=1000
- PUID=1000
ports:
- 5055:5055
# network_mode: "host"
volumes:
- /share/Media/jellyseerr:/app/config
restart: unless-stopped
jellyfin:
image: jellyfin/jellyfin:latest
container_name: jellyfin
environment:
- PUID=1000
- PGID=1000
- TZ=Europe/Dublin
volumes:
- /share/Media/jellyfin/config:/config
- /share/Media/jellyfin/cache:/cache
- /share/Media/jellyfin/movies:/movies
- /share/Media/jellyfin/tv:/tv
ports:
- 8096:8096
- 8920:8920 # Optional HTTPS port
- 7359:7359/udp # Optional: allows clients to discover Jellyfin on the local network
- 1900:1900/udp # Optional: DLNA
restart: unless-stopped
devices:
- /dev/dri:/dev/dri # Optional: for hardware transcoding if available
# network_mode: "host" # Optional: uncomment if you prefer host networking
networks:
- media_home_network
networks:
media_home_network:
driver: bridge
@efazati
Copy link
Author

efazati commented Aug 14, 2023

This is my .env file

MOUNT_POINT=/mnt/main/NAS
TZ=Europe/Dublin
PUID=1000
PGID=1000
VERSION=docker

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment