128 lines
3.1 KiB
YAML
128 lines
3.1 KiB
YAML
version: "3.6"
|
|
|
|
secrets:
|
|
openvpn_password:
|
|
file: ./vpnpas
|
|
|
|
services:
|
|
gluetun:
|
|
image: qmcgaw/gluetun
|
|
container_name: gluetun
|
|
cap_add:
|
|
- NET_ADMIN
|
|
devices:
|
|
- /dev/net/tun:/dev/net/tun
|
|
ports:
|
|
- 8888:8888/tcp # HTTP proxy
|
|
- 8388:8388/tcp # Shadowsocks
|
|
- 8388:8388/udp # Shadowsocks
|
|
- 9696:9696 # prowlarr
|
|
- 8191:8191 # flaresolverr
|
|
- 9091:9091
|
|
- 5055:5055
|
|
- 7878:7878 # radarr
|
|
- 8989:8989 # sonarr
|
|
- 51413:51413 # Port forwarding for gluetun
|
|
- 51413:51413/udp # Port forwarding for gluetun
|
|
environment:
|
|
- VPN_SERVICE_PROVIDER=private internet access
|
|
- VPN_TYPE=openvpn
|
|
- OPENVPN_USER=changeme
|
|
- OPENVPN_PASSWORD_FILE=/run/secrets/openvpn_password
|
|
- SERVER_REGIONS=change to region
|
|
- VPN_PORT_FORWARDING=on
|
|
- VPN_PORT_FORWARDING_STATUS_FILE=/tmp/gluetun/forwarded_port
|
|
secrets:
|
|
- openvpn_password
|
|
restart: always
|
|
|
|
prowlarr:
|
|
image: lscr.io/linuxserver/prowlarr:latest
|
|
container_name: prowlarr
|
|
env_file: .env
|
|
network_mode: "service:gluetun"
|
|
volumes:
|
|
- ./prowlarr/config:/config
|
|
restart: unless-stopped
|
|
|
|
flaresolverr:
|
|
image: ghcr.io/flaresolverr/flaresolverr:latest
|
|
container_name: flaresolverr
|
|
network_mode: "service:gluetun"
|
|
environment:
|
|
- LOG_LEVEL=info
|
|
restart: unless-stopped
|
|
|
|
transmission:
|
|
image: lscr.io/linuxserver/transmission:latest
|
|
container_name: transmission
|
|
network_mode: "service:gluetun"
|
|
environment:
|
|
- PUID=0
|
|
- PGID=0
|
|
- TZ=Etc/UTC
|
|
- TRANSMISSION_WEB_HOME= #optional
|
|
- USER=admin
|
|
- PASS=changeme
|
|
- WHITELIST= #optional
|
|
- PEERPORT= #optional
|
|
- HOST_WHITELIST= #optional
|
|
volumes:
|
|
- ./trans/data:/config
|
|
- ./downloads:/downloads
|
|
- ./watch/folder:/watch
|
|
restart: unless-stopped
|
|
|
|
radarr:
|
|
image: lscr.io/linuxserver/radarr:latest
|
|
container_name: radarr
|
|
env_file: .env
|
|
network_mode: "service:gluetun"
|
|
volumes:
|
|
- ./radarr/config:/config
|
|
- ./movies:/media/movies
|
|
- ./downloads:/downloads
|
|
restart: unless-stopped
|
|
|
|
sonarr:
|
|
image: lscr.io/linuxserver/sonarr:latest
|
|
container_name: sonarr
|
|
env_file: .env
|
|
network_mode: "service:gluetun"
|
|
volumes:
|
|
- ./sonarr/config:/config
|
|
- ./tvseries:/media/tv
|
|
- ./downloads:/downloads
|
|
restart: unless-stopped
|
|
|
|
jellyfin:
|
|
image: linuxserver/jellyfin
|
|
container_name: jellyfin
|
|
network_mode: host
|
|
environment:
|
|
- PUID=0
|
|
- PGID=0
|
|
- TZ=Etc/UTC
|
|
volumes:
|
|
- ./config:/config
|
|
- ./cache:/cache
|
|
- ./tvseries:/media/tv
|
|
- ./movies:/media/movies
|
|
devices:
|
|
- "/dev/dri:/dev/dri" # IGPU
|
|
ports:
|
|
- 8096:8096 # jellyfin (HTTP)
|
|
restart: unless-stopped
|
|
|
|
jellyseerr:
|
|
image: fallenbagel/jellyseerr
|
|
container_name: jellyseerr
|
|
network_mode: "service:gluetun"
|
|
environment:
|
|
- PUID=0
|
|
- PGID=0
|
|
- TZ=Etc/UTC
|
|
volumes:
|
|
- ./jellyseerr/config:/config
|
|
- ./jellyseerr/data:/data
|
|
restart: unless-stopped |