From 9a82983d9729e76c316d91361d5706c2840a0d0e Mon Sep 17 00:00:00 2001 From: Ivo Oskamp Date: Fri, 20 Dec 2024 22:36:39 +0100 Subject: [PATCH] Upload files to "compose/mediastack" --- compose/mediastack/.env | 7 ++ compose/mediastack/docker-compose.yml | 168 ++++++++++++++++++++++++++ 2 files changed, 175 insertions(+) create mode 100644 compose/mediastack/.env create mode 100644 compose/mediastack/docker-compose.yml diff --git a/compose/mediastack/.env b/compose/mediastack/.env new file mode 100644 index 0000000..909fcad --- /dev/null +++ b/compose/mediastack/.env @@ -0,0 +1,7 @@ +TZ=Europe/Amsterdam +PUID=1000 +PGID=1000 +ROOT=/docker/appdata/ +HDDSTORAGE=/docker/shared/nas/ +SERVERURL=auto +PEERS=7 \ No newline at end of file diff --git a/compose/mediastack/docker-compose.yml b/compose/mediastack/docker-compose.yml new file mode 100644 index 0000000..9c77e99 --- /dev/null +++ b/compose/mediastack/docker-compose.yml @@ -0,0 +1,168 @@ +networks: + frontend: + external: true +services: + prowlarr: + image: lscr.io/linuxserver/prowlarr:latest + security_opt: + - apparmor:unconfined + container_name: prowlarr + environment: + - PUID=${PGID} + - PGID=${PGID} + - TZ=${TZ} + volumes: + - '${ROOT}/prowlarr:/config' + labels: + - traefik.enable=true + - traefik.http.routers.prowlarr.entrypoints=websecure + - traefik.http.routers.prowlarr.rule=Host(`example.domain.com`) + - traefik.http.routers.prowlarr.tls=true + - traefik.http.routers.prowlarr.tls.certresolver=production + - traefik.http.routers.prowlarr.service=prowlarr + - traefik.http.services.prowlarr.loadBalancer.server.port=9696 + - traefik.http.routers.prowlarr.middlewares=authentik@file + networks: + - frontend + ports: + - 9696:9696 + restart: unless-stopped + + sonarr: + container_name: sonarr + image: 'lscr.io/linuxserver/sonarr:latest' + security_opt: + - apparmor:unconfined + restart: unless-stopped + #network_mode: host + environment: + - PUID=${PUID} + - PGID=${PGID} + - TZ=${TZ} + volumes: + - '/etc/localtime:/etc/localtime:ro' + - '${ROOT}/sonarr:/config' + - '${HDDSTORAGE}/shared:/shared' + labels: + - traefik.enable=true + - traefik.http.routers.sonarr.entrypoints=websecure + - traefik.http.routers.sonarr.rule=Host(`example.domain.com`) + - traefik.http.routers.sonarr.tls=true + - traefik.http.routers.sonarr.tls.certresolver=production + - traefik.http.routers.sonarr.service=sonarr + - traefik.http.services.sonarr.loadBalancer.server.port=8989 + - traefik.http.routers.sonarr.middlewares=authentik@file + networks: + - frontend + ports: + - 8989:8989 + + radarr: + container_name: radarr + image: 'lscr.io/linuxserver/radarr:nightly' + security_opt: + - apparmor:unconfined + restart: unless-stopped + #network_mode: host + environment: + - PUID=${PUID} + - PGID=${PGID} + - TZ=${TZ} + volumes: + - '/etc/localtime:/etc/localtime:ro' + - '${ROOT}/radarr:/config' + - '${HDDSTORAGE}/shared:/shared' + labels: + - traefik.enable=true + - traefik.http.routers.radarr.entrypoints=websecure + - traefik.http.routers.radarr.rule=Host(`example.domain.com`) + - traefik.http.routers.radarr.tls=true + - traefik.http.routers.radarr.tls.certresolver=production + - traefik.http.routers.radarr.service=radarr + - traefik.http.services.radarr.loadBalancer.server.port=7878 + - traefik.http.routers.radarr.middlewares=authentik@file + networks: + - frontend + ports: + - 7878:7878 + + bazarr: + container_name: bazarr + image: 'lscr.io/linuxserver/bazarr:latest' + security_opt: + - apparmor:unconfined + restart: unless-stopped + #network_mode: host + environment: + - PUID=${PUID} + - PGID=${PGID} + - TZ=${TZ} + volumes: + - '${ROOT}/bazarr:/config' + - '${HDDSTORAGE}/shared:/shared' + labels: + - traefik.enable=true + - traefik.http.routers.bazarr.entrypoints=websecure + - traefik.http.routers.bazarr.rule=Host(`example.domain.com`) + - traefik.http.routers.bazarr.tls=true + - traefik.http.routers.bazarr.tls.certresolver=production + - traefik.http.routers.bazarr.service=bazarr + - traefik.http.services.bazarr.loadBalancer.server.port=6767 + - traefik.http.routers.bazarr.middlewares=authentik@file + networks: + - frontend + ports: + - 6767:6767 + + lidarr: + container_name: lidarr + image: 'lscr.io/linuxserver/lidarr:latest' + security_opt: + - apparmor:unconfined + restart: unless-stopped + #network_mode: host + environment: + - PUID=${PUID} + - PGID=${PGID} + - TZ=${TZ} + volumes: + - '${ROOT}/lidarr:/config' + - '${HDDSTORAGE}/shared:/shared' + labels: + - traefik.enable=true + - traefik.http.routers.lidarr.entrypoints=websecure + - traefik.http.routers.lidarr.rule=Host(`example.domain.com`) + - traefik.http.routers.lidarr.tls=true + - traefik.http.routers.lidarr.tls.certresolver=production + - traefik.http.routers.lidarr.service=lidarr + - traefik.http.services.lidarr.loadBalancer.server.port=8686 + - traefik.http.routers.radarr.middlewares=authentik@file + networks: + - frontend + ports: + - 8686:8686 + + overseerr: + image: 'lscr.io/linuxserver/overseerr:latest' + security_opt: + - apparmor:unconfined + container_name: overseerr + environment: + - LOG_LEVEL=debug + - TZ=${TZ} + volumes: + - '${ROOT}/overseerr:/config' + labels: + - traefik.enable=true + - traefik.http.routers.overseerr.entrypoints=websecure + - traefik.http.routers.overseerr.rule=Host(`example.domain.com`) + - traefik.http.routers.overseerr.tls=true + - traefik.http.routers.overseerr.tls.certresolver=production + - traefik.http.routers.overseerr.service=overseerr + - traefik.http.services.overseerr.loadBalancer.server.port=5055 + - traefik.http.routers.overseerr.middlewares=authentik@file + networks: + - frontend + ports: + - 5055:5055 + restart: unless-stopped \ No newline at end of file