########################################################################### ########################################################################### ## ## Docker Compose File: Gluetun (qmcgaw) ## Function: VPN Client ## ## Documentation: https://github.com/qdm12/gluetun-wiki ## ########################################################################### ########################################################################### networks: mediastack: name: mediastack driver: bridge ipam: driver: default config: - subnet: ${DOCKER_SUBNET:?err} gateway: ${DOCKER_GATEWAY:?err} services: gluetun: image: qmcgaw/gluetun:latest container_name: gluetun restart: always cap_add: - NET_ADMIN devices: - /dev/net/tun:/dev/net/tun ports: #- "8320:8320/tcp" # Gluetun Local Network HTTP control server - "8888:8888/tcp" # Gluetun Local Network HTTP proxy - "8388:8388/tcp" # Gluetun Local Network Shadowsocks - "8388:8388/udp" # Gluetun Local Network Shadowsocks - "${GLUETUN_CONTROL_PORT:?err}:${GLUETUN_CONTROL_PORT:?err}" # Gluetun Status Port - "${QBIT_PORT:?err}:6881" # Transmission Torrent Port # Comment out lines below if they are not going to use Gluetun VPN for Internet connection: # - "${WEBUI_PORT_BAZARR:?err}:6767" # WebUI Portal: Bazarr # - "${WEBUI_PORT_HOMARR:?err}:7575" # WebUI Portal: Homarr # - "${WEBUI_PORT_JELLYFIN:?err}:8096" # WebUI Portal: Jellyfin # - "${WEBUI_PORT_JELLYSEERR:?err}:5055" # WebUI Portal: Jellyseerr - "${WEBUI_PORT_LIDARR:?err}:8686" # WebUI Portal: Lidarr # - "${WEBUI_PORT_MYLAR:?err}:8090" # WebUI Portal: Mylar3 - "${WEBUI_PORT_PROWLARR:?err}:9696" # WebUI Portal: Prowlarr - "${WEBUI_PORT_RADARR:?err}:7878" # WebUI Portal: Radarr - "${WEBUI_PORT_JACKET:?err}:9117" # WebUI Portal: Jackett - "${WEBUI_PORT_READARR:?err}:8787" # WebUI Portal: Readarr # - "${WEBUI_PORT_SABNZBD:?err}:8080" # WebUI Portal: SABnzbd # - "${WEBUI_PORT_SONARR:?err}:8989" # WebUI Portal: Sonarr # - "${WEBUI_PORT_WHISPARR:?err}:6969" # WebUI Portal: Whisparr - "${FLARESOLVERR_PORT:?err}:8191" # Flaresolverr Port # - "${WEBUI_PORT_FILEBOT:?err}:${WEBUI_PORT_FILEBOT:?err}" # WebUI Portal: Filebot - "${WEBUI_PORT_QBITTORRENT:?err}:${WEBUI_PORT_QBITTORRENT:?err}" # WebUI Portal: qBittorrent 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 # NOTE: Gluetun VPN container MUST ONLY connect to the mediastack networks: - mediastack