# TODO: Fix path mappings in containers since it's currently /data/data and /media/media ## Function: VPN Client ## Documentation: https://github.com/qdm12/gluetun-wiki services: gluetun: image: qmcgaw/gluetun:latest container_name: gluetun restart: always cap_add: - NET_ADMIN devices: - /dev/net/tun:/dev/net/tun ports: - "8888:8888/tcp" # Gluetun Local Network HTTP proxy - "8388:8388/tcp" # Gluetun Local Network Shadowsocks - "8388:8388/udp" # Gluetun Local Network Shadowsocks - "${WEBUI_PORT_QBITTORRENT:?err}:${WEBUI_PORT_QBITTORRENT:?err}" # WebUI Portal: qBittorrent - "${QBIT_PORT:?err}:6881" # Transmission Torrent Port volumes: - ${FOLDER_FOR_DATA:?err}/gluetun:/gluetun environment: - PUID=${PUID:?err} - PGID=${PGID:?err} - UMASK=${UMASK:?err} - TZ=${TIMEZONE:?err} - VPN_SERVICE_PROVIDER=${VPN_SERVICE_PROVIDER:?err} - OPENVPN_USER=${VPN_USERNAME:?err} - OPENVPN_PASSWORD=${VPN_PASSWORD:?err} - SERVER_COUNTRIES=${SERVER_COUNTRIES} - SERVER_REGIONS=${SERVER_REGIONS} - SERVER_CITIES=${SERVER_CITIES} - SERVER_HOSTNAMES=${SERVER_HOSTNAMES} - SERVER_CATEGORIES=${SERVER_CATEGORIES} - FIREWALL_OUTBOUND_SUBNETS=${LOCAL_SUBNET:?err} - OPENVPN_CUSTOM_CONFIG=${OPENVPN_CUSTOM_CONFIG} - HTTP_CONTROL_SERVER_ADDRESS=:${GLUETUN_CONTROL_PORT:?err} - VPN_TYPE=${VPN_TYPE} - VPN_ENDPOINT_IP=${VPN_ENDPOINT_IP} - VPN_ENDPOINT_PORT=${VPN_ENDPOINT_PORT} - WIREGUARD_PUBLIC_KEY=${WIREGUARD_PUBLIC_KEY} - WIREGUARD_PRIVATE_KEY=${WIREGUARD_PRIVATE_KEY} - WIREGUARD_PRESHARED_KEY=${WIREGUARD_PRESHARED_KEY} - WIREGUARD_ADDRESSES=${WIREGUARD_ADDRESSES} - HTTPPROXY=on - SHADOWSOCKS=on ## Function: Cloudflare Proxy Server ## Documentation: https://github.com/FlareSolverr/FlareSolverr ########################################################################## flaresolverr: image: ghcr.io/flaresolverr/flaresolverr:latest container_name: flaresolverr restart: unless-stopped ports: - "${FLARESOLVERR_PORT:?err}:8191" environment: - LOG_LEVEL=info - LOG_HTML=false - CAPTCHA_SOLVER=none - TZ=${TIMEZONE:?err} ## Function: Indexer and Search Manager ## Documentation: https://docs.linuxserver.io/images/docker-prowlarr prowlarr: image: lscr.io/linuxserver/prowlarr:develop container_name: prowlarr restart: unless-stopped volumes: - /home/docker/prowlarr:/config ports: - "${WEBUI_PORT_PROWLARR:?err}:9696" environment: - PUID=${PUID:?err} - PGID=${PGID:?err} - TZ=${TIMEZONE:?err} - DOCKER_MODS=ghcr.io/themepark-dev/theme.park:prowlarr - TP_THEME=${TP_THEME:?err} ## Function: Torrent Download Client ## Documentation: https://docs.linuxserver.io/images/docker-qbittorrent qbittorrent: image: lscr.io/linuxserver/qbittorrent:latest container_name: qbittorrent restart: unless-stopped volumes: - /home/docker/qbittorrent:/config - /home/docker/media/torrents:/data/torrents environment: - PUID=${PUID:?err} - PGID=${PGID:?err} - UMASK=${UMASK:?err} - TZ=${TIMEZONE:?err} - WEBUI_PORT=${WEBUI_PORT_QBITTORRENT:?err} - DOCKER_MODS=ghcr.io/themepark-dev/theme.park:qbittorrent - TP_THEME=${TP_THEME:?err} network_mode: "service:gluetun" ## Function: Series Library Manager (TV Shows) ## Documentation: https://docs.linuxserver.io/images/docker-sonarr sonarr: image: lscr.io/linuxserver/sonarr:latest container_name: sonarr restart: unless-stopped volumes: - /home/docker/sonarr:/config - /home/docker/media:/data ports: - "${WEBUI_PORT_SONARR:?err}:8989" environment: - PUID=${PUID:?err} - PGID=${PGID:?err} - TZ=${TIMEZONE:?err} - DOCKER_MODS=ghcr.io/themepark-dev/theme.park:sonarr - TP_THEME=${TP_THEME:?err} ## Function: Movie Library Manager ## Documentation: https://docs.linuxserver.io/images/docker-radarr radarr: image: lscr.io/linuxserver/radarr:latest container_name: radarr restart: unless-stopped volumes: - /home/docker/radarr:/config - /home/docker/media:/data ports: - "${WEBUI_PORT_RADARR:?err}:7878" environment: - PUID=${PUID:?err} - PGID=${PGID:?err} - TZ=${TIMEZONE:?err} - DOCKER_MODS=ghcr.io/themepark-dev/theme.park:radarr - TP_THEME=${TP_THEME:?err} ## Function: Usenet Download Client ## Documentation: https://docs.linuxserver.io/images/docker-sabnzbd sabnzbd: image: lscr.io/linuxserver/sabnzbd:latest container_name: sabnzbd restart: unless-stopped volumes: - /home/docker/sabnzbd:/config - /home/docker/media/usenet:/data/usenet ports: - "${WEBUI_PORT_SABNZBD:?err}:8080" environment: - PUID=${PUID:?err} - PGID=${PGID:?err} - TZ=${TIMEZONE:?err} - DOCKER_MODS=ghcr.io/themepark-dev/theme.park:sabnzbd - TP_THEME=${TP_THEME:?err} ## Function: Book Library Manager ## Documentation: https://docs.linuxserver.io/images/docker-readarr readarr: image: lscr.io/linuxserver/readarr:develop container_name: readarr restart: unless-stopped volumes: - /home/docker/readarr:/config - /home/docker/media:/data ports: - "${WEBUI_PORT_READARR:?err}:8787" environment: - PUID=${PUID:?err} - PGID=${PGID:?err} - TZ=${TIMEZONE:?err} - DOCKER_MODS=ghcr.io/themepark-dev/theme.park:readarr - TP_THEME=${TP_THEME:?err} ## Function: Lookup and Rename Media from Internet Databases ## Docker Page: https://github.com/filebot/filebot-docker#filebot-xpra ## Homepage: https://www.filebot.net/ ## User Forum: https://www.filebot.net/forums # filebot: # image: rednoah/filebot:xpra # container_name: filebot # restart: unless-stopped # ports: # - "${WEBUI_PORT_FILEBOT:?err}:5454" # volumes: # - ${FOLDER_FOR_DATA:?err}/filebot:/data/filebot # - ${FOLDER_FOR_MEDIA:?err}/filebot:/filebot # environment: # # - XPRA_AUTH=password:value=YOUR_PASSWORD # - PUID=${PUID:?err} # - PGID=${PGID:?err} # - UMASK=${UMASK:?err} # - TZ=${TIMEZONE:?err} # - DARK_MODE=1 ## Function: Media Request Manager ## Documentation: https://hub.docker.com/r/fallenbagel/jellyseerr # jellyseerr: # image: fallenbagel/jellyseerr:latest # container_name: jellyseerr # restart: unless-stopped # volumes: # - ${FOLDER_FOR_DATA:?err}/jellyseerr:/app/config # ports: # - "${WEBUI_PORT_JELLYSEERR:?err}:5055" # environment: # - PUID=${PUID:?err} # - PGID=${PGID:?err} # - UMASK=${UMASK:?err} # - TZ=${TIMEZONE:?err} ## Function: Music Library Manager ## Documentation: https://docs.linuxserver.io/images/docker-lidarr # lidarr: # image: lscr.io/linuxserver/lidarr:latest # container_name: lidarr # restart: unless-stopped # volumes: # - ${FOLDER_FOR_DATA:?err}/lidarr:/config # - ${FOLDER_FOR_MEDIA:?err}:/data # ports: # - "${WEBUI_PORT_LIDARR:?err}:8686" # environment: # - PUID=${PUID:?err} # - PGID=${PGID:?err} # - TZ=${TIMEZONE:?err} # - DOCKER_MODS=ghcr.io/themepark-dev/theme.park:lidarr # - TP_THEME=${TP_THEME:?err} ## Function: Comic Library Manager ## Documentation: https://github.com/mylar3/mylar3/wiki # mylar: # image: lscr.io/linuxserver/mylar3:latest # container_name: mylar # restart: unless-stopped # volumes: # - ${FOLDER_FOR_DATA:?err}/mylar:/config # - ${FOLDER_FOR_MEDIA:?err}:/data # ports: # - "${WEBUI_PORT_MYLAR:?err}:8090" # environment: # - PUID=${PUID:?err} # - PGID=${PGID:?err} # - TZ=${TIMEZONE:?err} # - DOCKER_MODS=ghcr.io/themepark-dev/theme.park:mylar3 # - TP_THEME=${TP_THEME:?err} ## Function: Tdarr V2 - Audio/Video library transcoding automation (Contains Tdarr_Server and WebUI ) ## Documentation: https://docs.tdarr.io/docs/installation/docker/run-compose/ ## https://docs.tdarr.io/docs/installation/docker/hardware-transcoding # tdarr: # image: ghcr.io/haveagitgat/tdarr:latest # container_name: tdarr # restart: unless-stopped # volumes: # - ${FOLDER_FOR_DATA:?err}/tdarr/server:/app/server # - ${FOLDER_FOR_DATA:?err}/tdarr/configs:/app/configs # - ${FOLDER_FOR_DATA:?err}/tdarr/logs:/app/logs # - ${FOLDER_FOR_DATA:?err}/tdarr_transcode_cache:/temp # - ${FOLDER_FOR_MEDIA:?err}/media:/data # ports: # - "${TDARR_SERVER_PORT:?err}:${TDARR_SERVER_PORT:?err}" # - "${WEBUI_PORT_TDARR:?err}:${WEBUI_PORT_TDARR:?err}" # environment: # - PUID=${PUID:?err} # - PGID=${PGID:?err} # - UMASK=${UMASK:?err} # - TZ=${TIMEZONE:?err} # - serverIP=0.0.0.0 # - serverPort=${TDARR_SERVER_PORT:?err} # - webUIPort=${WEBUI_PORT_TDARR:?err} # - internalNode=true # - nodeID=Tdarr_Server # tdarr-node: # image: ghcr.io/haveagitgat/tdarr_node:latest # container_name: tdarr-node # restart: unless-stopped # volumes: # - ${FOLDER_FOR_DATA:?err}/tdarr/configs:/app/configs # - ${FOLDER_FOR_DATA:?err}/tdarr/logs:/app/logs # - ${FOLDER_FOR_DATA:?err}/tdarr_transcode_cache:/temp # - ${FOLDER_FOR_MEDIA:?err}/media:/data # environment: # - PUID=${PUID:?err} # - PGID=${PGID:?err} # - UMASK=${UMASK:?err} # - TZ=${TIMEZONE:?err} # - nodeID=Tdarr_Node_1 # - serverIP=0.0.0.0 # - serverPort=${TDARR_SERVER_PORT:?err} # ## Function: Archive Media Extraction # ## Documentation: https://github.com/davidnewhall/unpackerr # ## https://github.com/davidnewhall/unpackerr/blob/master/examples/docker-compose.yml # unpackerr: # image: ghcr.io/hotio/unpackerr:latest # container_name: unpackerr # restart: unless-stopped # volumes: # - ${FOLDER_FOR_DATA:?err}/unpackerr:/config # - ${FOLDER_FOR_MEDIA:?err}:/data # environment: # - PUID=${PUID:?err} # - PGID=${PGID:?err} # - UMASK=${UMASK:?err} # - TZ=${TIMEZONE:?err} # # Documentation on all Environment Variables can be found at: # # https://github.com/davidnewhall/unpackerr#docker-env-variables # - UN_DEBUG=false # - UN_LOG_FILE= # - UN_LOG_FILES=10 # - UN_LOG_FILE_MB=10 # - UN_INTERVAL=2m # - UN_START_DELAY=1m # - UN_RETRY_DELAY=5m # - UN_MAX_RETRIES=3 # - UN_PARALLEL=1 # - UN_FILE_MODE=0664 # - UN_DIR_MODE=0775 # # Sonarr Config - Copy API Key from: http://sonarr:8989/general/settings # - UN_SONARR_0_URL=http://sonarr:8989 # - UN_SONARR_0_API_KEY= # - UN_SONARR_0_PATHS_0=/data/torrents/anime # - UN_SONARR_0_PATHS_1=/data/torrents/tv # - UN_SONARR_0_PROTOCOLS=torrent # - UN_SONARR_0_TIMEOUT=10s # - UN_SONARR_0_DELETE_ORIG=false # - UN_SONARR_0_DELETE_DELAY=5m # # Radarr Config - Copy API Key from: http://radarr:7878/general/settings # - UN_RADARR_0_URL=http://radarr:7878 # - UN_RADARR_0_API_KEY= # - UN_RADARR_0_PATHS_0=/data/torrents/movies # - UN_RADARR_0_PROTOCOLS=torrent # - UN_RADARR_0_TIMEOUT=10s # - UN_RADARR_0_DELETE_ORIG=false # - UN_RADARR_0_DELETE_DELAY=5m # # Lidarr Config - Copy API Key from: http://lidarr:8686/general/settings # - UN_LIDARR_0_URL=http://lidarr:8686 # - UN_LIDARR_0_API_KEY= # - UN_LIDARR_0_PATHS_0=/data/torrents/music # - UN_LIDARR_0_PROTOCOLS=torrent # - UN_LIDARR_0_TIMEOUT=10s # - UN_LIDARR_0_DELETE_ORIG=false # - UN_LIDARR_0_DELETE_DELAY=5m # # Readarr Config - Copy API Key from: http://readarr:8787/general/settings # - UN_READARR_0_URL=http://readarr:8787 # - UN_READARR_0_API_KEY= # - UN_READARR_0_PATHS_0=/data/torrents/books # - UN_READARR_0_PROTOCOLS=torrent # - UN_READARR_0_TIMEOUT=10s # - UN_READARR_0_DELETE_ORIG=false # - UN_READARR_0_DELETE_DELAY=5m # # Folder Config # - UN_FOLDER_0_PATH= # - UN_FOLDER_0_EXTRACT_PATH= # - UN_FOLDER_0_DELETE_AFTER=10m # - UN_FOLDER_0_DELETE_ORIGINAL=false # - UN_FOLDER_0_DELETE_FILES=false # - UN_FOLDER_0_MOVE_BACK=false # # Webhook Config # - UN_WEBHOOK_0_URL= # - UN_WEBHOOK_0_NAME= # - UN_WEBHOOK_0_NICKNAME=Unpackerr # - UN_WEBHOOK_0_CHANNEL= # - UN_WEBHOOK_0_TIMEOUT=10s # - UN_WEBHOOK_0_SILENT=false # - UN_WEBHOOK_0_IGNORE_SSL=false # - UN_WEBHOOK_0_EXCLUDE_0= # - UN_WEBHOOK_0_EVENTS_0=0 # - UN_WEBHOOK_0_TEMPLATE_PATH= # - UN_WEBHOOK_0_CONTENT_TYPE=application/json # # Command Hook Config # - UN_CMDHOOK_0_COMMAND= # - UN_CMDHOOK_0_NAME= # - UN_CMDHOOK_0_TIMEOUT=10s # - UN_CMDHOOK_0_SILENT=false # - UN_CMDHOOK_0_SHELL=false # - UN_CMDHOOK_0_EXCLUDE_0= # - UN_CMDHOOK_0_EVENTS_0=0 # security_opt: # - no-new-privileges:true # network_mode: none