aboutsummaryrefslogtreecommitdiff
path: root/docker-compose.yml
diff options
context:
space:
mode:
Diffstat (limited to 'docker-compose.yml')
-rw-r--r--docker-compose.yml143
1 files changed, 143 insertions, 0 deletions
diff --git a/docker-compose.yml b/docker-compose.yml
new file mode 100644
index 0000000..f93b205
--- /dev/null
+++ b/docker-compose.yml
@@ -0,0 +1,143 @@
+services:
+ gluetun:
+ image: qmcgaw/gluetun:v3.40.0
+ container_name: gluetun
+ cap_add:
+ - NET_ADMIN
+ devices:
+ - /dev/net/tun:/dev/net/tun
+ environment:
+ - VPN_SERVICE_PROVIDER=${VPN_SERVICE_PROVIDER}
+ - VPN_TYPE=${VPN_TYPE}
+ - WIREGUARD_PRIVATE_KEY=${WIREGUARD_PRIVATE_KEY}
+ - WIREGUARD_ADDRESSES=${WIREGUARD_ADDRESSES}
+ - SERVER_CITIES=${SERVER_CITIES}
+ - FIREWALL_INPUT_PORTS=8123
+ - TZ=${TZ}
+ volumes:
+ - ./config/gluetun:/gluetun
+ networks:
+ - media
+ restart: unless-stopped
+
+ qbittorrent:
+ image: lscr.io/linuxserver/qbittorrent:latest
+ container_name: qbittorrent
+ network_mode: "service:gluetun"
+ depends_on:
+ - gluetun
+ environment:
+ - PUID=${PUID}
+ - PGID=${PGID}
+ - TZ=${TZ}
+ - WEBUI_PORT=8123
+ volumes:
+ - /volume2/docker/linuxserver_qbittorrent-1/config:/config
+ - ${DOWNLOADS_PATH}:/downloads
+ restart: unless-stopped
+
+ jellyfin:
+ image: lscr.io/linuxserver/jellyfin:latest
+ container_name: jellyfin
+ environment:
+ - PUID=${PUID}
+ - PGID=${PGID}
+ - TZ=${TZ}
+ volumes:
+ - /volume2/docker/jellyfin/config:/config
+ - ${MOVIES_PATH}:/movies
+ - ${TV_PATH}:/shows
+ devices:
+ - /dev/dri:/dev/dri
+ networks:
+ - media
+ restart: unless-stopped
+
+ radarr:
+ image: lscr.io/linuxserver/radarr:latest
+ container_name: radarr
+ environment:
+ - PUID=${PUID}
+ - PGID=${PGID}
+ - TZ=${TZ}
+ volumes:
+ - /volume2/docker/radarr:/config
+ - ${MOVIES_PATH}:/movies
+ - ${DOWNLOADS_PATH}:/downloads
+ networks:
+ - media
+ restart: unless-stopped
+
+ sonarr:
+ image: lscr.io/linuxserver/sonarr:latest
+ container_name: sonarr
+ environment:
+ - PUID=${PUID}
+ - PGID=${PGID}
+ - TZ=${TZ}
+ volumes:
+ - /volume2/docker/sonarr:/config
+ - ${TV_PATH}:/tv
+ - ${DOWNLOADS_PATH}:/downloads
+ networks:
+ - media
+ restart: unless-stopped
+
+ prowlarr:
+ image: lscr.io/linuxserver/prowlarr:latest
+ container_name: prowlarr
+ environment:
+ - PUID=${PUID}
+ - PGID=${PGID}
+ - TZ=${TZ}
+ volumes:
+ - /volume2/docker/prowlarr:/config
+ networks:
+ - media
+ restart: unless-stopped
+
+ bazarr:
+ image: lscr.io/linuxserver/bazarr:latest
+ container_name: bazarr
+ environment:
+ - PUID=${PUID}
+ - PGID=${PGID}
+ - TZ=${TZ}
+ volumes:
+ - /volume2/docker/bazarr:/config
+ - ${MOVIES_PATH}:/movies
+ - ${TV_PATH}:/tv
+ networks:
+ - media
+ restart: unless-stopped
+
+ caddy:
+ build: ./caddy
+ container_name: caddy
+ ports:
+ - "${TS_IP}:443:443"
+ environment:
+ - GANDI_BEARER_TOKEN=${GANDI_BEARER_TOKEN}
+ - DOMAIN=${DOMAIN}
+ volumes:
+ - ./caddy/Caddyfile:/etc/caddy/Caddyfile:ro
+ - caddy_data:/data
+ - caddy_config:/config
+ networks:
+ - media
+ depends_on:
+ - jellyfin
+ - radarr
+ - sonarr
+ - prowlarr
+ - bazarr
+ - gluetun
+ restart: unless-stopped
+
+networks:
+ media:
+ driver: bridge
+
+volumes:
+ caddy_data:
+ caddy_config: