diff --git a/theftstack/docker-compose.yml b/theftstack/docker-compose.yml index 0e7c89c..31d4ba6 100644 --- a/theftstack/docker-compose.yml +++ b/theftstack/docker-compose.yml @@ -1,41 +1,44 @@ -version: "3" +--- +version: "3.4" + +x-common-env: &common-env + PUID: ${UID} + PGID: ${GID} + TZ: America/New_York + services: sabnzbd: image: lscr.io/linuxserver/sabnzbd:latest container_name: sabnzbd environment: - - PUID=1000 - - PGID=1000 - - TZ=America/New_York + <<: *common-env volumes: - - /config/.sabnzbd/:/config + - /config/sabnzbd/:/config - /storage/theft/usenet:/data/theft/usenet ports: - 8080:8080 network_mode: "host" restart: unless-stopped + prowlarr: image: lscr.io/linuxserver/prowlarr:develop container_name: prowlarr environment: - - PUID=1000 - - PGID=1000 - - TZ=America/New_York + <<: *common-env volumes: - - /config/.prowlarr:/config + - /config/prowlarr:/config ports: - 9696:9696 network_mode: "host" restart: unless-stopped + radarr: image: lscr.io/linuxserver/radarr:latest container_name: radarr environment: - - PUID=1000 - - PGID=1000 - - TZ=America/New_York + <<: *common-env volumes: - - /config/radarr_config:/config + - /config/radarr:/config - /storage:/data ports: - 7878:7878 @@ -44,15 +47,14 @@ services: depends_on: - sabnzbd - prowlarr + sonarr: image: lscr.io/linuxserver/sonarr:latest container_name: sonarr environment: - - PUID=1000 - - PGID=1000 - - TZ=America/New_York + <<: *common-env volumes: - - /config/sonarr_config:/config + - /config/sonarr:/config - /storage:/data ports: - 8989:8989 @@ -61,15 +63,14 @@ services: depends_on: - sabnzbd - prowlarr + lidarr: image: lscr.io/linuxserver/lidarr:latest container_name: lidarr environment: - - PUID=1000 - - PGID=1000 - - TZ=America/New_York + <<: *common-env volumes: - - /config/lidarr_config:/config + - /config/lidarr:/config - /storage/theft/lidarr/MediaCover:/config/MediaCover - /storage:/data ports: @@ -79,15 +80,14 @@ services: depends_on: - sabnzbd - prowlarr + readarr: image: lscr.io/linuxserver/readarr:develop container_name: readarr environment: - - PUID=1000 - - PGID=1000 - - TZ=America/New_York + <<: *common-env volumes: - - /config/readarr_config:/config + - /config/readarr:/config - /storage:/data ports: - 8787:8787 @@ -101,15 +101,13 @@ services: image: lscr.io/linuxserver/readarr:develop container_name: readarr_audio environment: - - PUID=1000 - - GUID=1000 - - TZ=America/New_York + <<: *common-env volumes: - - /config/readarr_audio_config:/config + - /config/readarr_audio:/config - /storage:/data ports: - - 8888:8888 - network_mode: "host" + - 8888:8787 + network_mode: "bridge" restart: unless-stopped depends_on: - sabnzbd @@ -121,10 +119,8 @@ services: ports: - 6969:6969 environment: - - PUID=1000 - - PGID=1000 - - UMASK=002 - - TZ=America/New_York + <<: *common-env + UMASK: 002 volumes: - /config/whisparr:/config - /storage:/data @@ -138,16 +134,14 @@ services: container_name: whisparrv1 image: docker.io/hotio/whisparr:v1 ports: - - 6969:7069 + - 7069:6969 environment: - - PUID=1000 - - PGID=1000 - - UMASK=002 - - TZ=America/New_York + <<: *common-env + UMASK: 002 volumes: - /config/whisparrv1:/config - /storage:/data - network_mode: "host" + network_mode: "bridge" restart: unless-stopped depends_on: - sabnzbd @@ -159,9 +153,7 @@ services: restart: unless-stopped network_mode: service:vpn environment: - - PUID=1000 - - PGID=1000 - - TZ=America/New_York + <<: *common-env volumes: - /storage/:/data - /config/deluge:/config @@ -183,13 +175,94 @@ services: - 8112:8112 command: "-r 10.0.11.0/24" + metube: + image: ghcr.io/alexta69/metube:latest + container_name: metube + restart: unless-stopped + environment: + <<: *common-env + ports: + - 8081:8081 + volumes: + - /storage/media/video/youtube:/downloads + + tubearchivist: + container_name: tubearchivist + restart: unless-stopped + image: bbilly1/tubearchivist + ports: + - 8000:8000 + volumes: + - /storage/media/video/youtube:/youtube + - cache:/cache + environment: + <<: *common-env + ES_URL: http://archivist-es:9200 + REDIS_CON: redis://archivist-redis:6379 + HOST_UID: 1000 + HOST_GID: 1000 + TA_HOST: pirate.homelab.lan:8000 + TA_USERNAME: ${TA_USERNAME} + TA_PASSWORD: ${TA_PASSWORD} + ELASTIC_PASSWORD: ${ELASTIC_PASSWORD} + healthcheck: + test: ["CMD", "curl", "-f", "http://localhost:8000/health"] + interval: 2m + timeout: 10s + retries: 3 + start_period: 30s + depends_on: + - archivist-es + - archivist-redis + + archivist-redis: + image: redis + container_name: archivist-redis + restart: unless-stopped + expose: + - "6379" + volumes: + - redis:/data + depends_on: + - archivist-es + + archivist-es: + image: bbilly1/tubearchivist-es + container_name: archivist-es + restart: unless-stopped + environment: + - "ELASTIC_PASSWORD=${ELASTIC_PASSWORD}" + - "ES_JAVA_OPTS=-Xms512m -Xmx512m" + - "xpack.security.enabled=true" + - "discovery.type=single-node" + - "path.repo=/usr/share/elasticsearch/data/snapshot" + ulimits: + memlock: + soft: -1 + hard: -1 + volumes: + - es:/usr/share/elasticsearch/data + expose: + - "9200" + + ytdl-sub: + image: ghcr.io/jmbannon/ytdl-sub-gui:latest + container_name: ytdl-sub + environment: + <<: *common-env + volumes: + - /config/ytdl-sub:/config + ports: + - 8443:8443 + restart: unless-stopped + sabnzbd-exporter: image: msroest/sabnzbd_exporter container_name: sabnzbd-exporter environment: - - SABNZBD_BASEURLS=http://dl.homelab.lan:8080/sabnzbd/ - - SABNZBD_APIKEYS=${SABNZBD_APIKEY} - - TZ=America/Detroit + <<: *common-env + SABNZBD_BASEURLS: http://dl.homelab.lan:8080/sabnzbd/ + SABNZBD_APIKEYS: ${SABNZBD_APIKEY} ports: - 9387:9387 restart: always @@ -200,6 +273,7 @@ services: image: ghcr.io/onedr0p/exportarr:latest command: ["sonarr"] environment: + <<: *common-env PORT: 9707 URL: "http://dl.homelab.lan:8989" APIKEY: ${SONARR_APIKEY} @@ -213,6 +287,7 @@ services: image: ghcr.io/onedr0p/exportarr:latest command: ["radarr"] environment: + <<: *common-env PORT: 9708 URL: "http://dl.homelab.lan:7878" APIKEY: ${RADARR_APIKEY} @@ -226,6 +301,7 @@ services: image: ghcr.io/onedr0p/exportarr:latest command: ["lidarr"] environment: + <<: *common-env PORT: 9709 URL: "http://dl.homelab.lan:8686" APIKEY: ${LIDARR_APIKEY} @@ -239,6 +315,7 @@ services: image: ghcr.io/onedr0p/exportarr:latest command: ["prowlarr"] environment: + <<: *common-env PORT: 9710 URL: "http://dl.homelab.lan:9696" APIKEY: ${PROWLARR_APIKEY} @@ -252,6 +329,7 @@ services: image: ghcr.io/onedr0p/exportarr:latest command: ["readarr"] environment: + <<: *common-env PORT: 9711 URL: "http://dl.homelab.lan:8787" APIKEY: ${READARR_APIKEY} @@ -268,5 +346,10 @@ services: - /var/run/docker.sock:/var/run/docker.sock restart: always environment: + <<: *common-env WATCHTOWER_CLEANUP: "true" - TZ: America/Detroit + +volumes: + es: + redis: + cache: