refactor service definitions, add metube and tubearchivist from prod server

This commit is contained in:
2025-06-07 21:35:35 -04:00
parent 8db1adf3ec
commit ccf13e42e4
+131 -48
View File
@@ -1,41 +1,44 @@
version: "3" ---
version: "3.4"
x-common-env: &common-env
PUID: ${UID}
PGID: ${GID}
TZ: America/New_York
services: services:
sabnzbd: sabnzbd:
image: lscr.io/linuxserver/sabnzbd:latest image: lscr.io/linuxserver/sabnzbd:latest
container_name: sabnzbd container_name: sabnzbd
environment: environment:
- PUID=1000 <<: *common-env
- PGID=1000
- TZ=America/New_York
volumes: volumes:
- /config/.sabnzbd/:/config - /config/sabnzbd/:/config
- /storage/theft/usenet:/data/theft/usenet - /storage/theft/usenet:/data/theft/usenet
ports: ports:
- 8080:8080 - 8080:8080
network_mode: "host" network_mode: "host"
restart: unless-stopped restart: unless-stopped
prowlarr: prowlarr:
image: lscr.io/linuxserver/prowlarr:develop image: lscr.io/linuxserver/prowlarr:develop
container_name: prowlarr container_name: prowlarr
environment: environment:
- PUID=1000 <<: *common-env
- PGID=1000
- TZ=America/New_York
volumes: volumes:
- /config/.prowlarr:/config - /config/prowlarr:/config
ports: ports:
- 9696:9696 - 9696:9696
network_mode: "host" network_mode: "host"
restart: unless-stopped restart: unless-stopped
radarr: radarr:
image: lscr.io/linuxserver/radarr:latest image: lscr.io/linuxserver/radarr:latest
container_name: radarr container_name: radarr
environment: environment:
- PUID=1000 <<: *common-env
- PGID=1000
- TZ=America/New_York
volumes: volumes:
- /config/radarr_config:/config - /config/radarr:/config
- /storage:/data - /storage:/data
ports: ports:
- 7878:7878 - 7878:7878
@@ -44,15 +47,14 @@ services:
depends_on: depends_on:
- sabnzbd - sabnzbd
- prowlarr - prowlarr
sonarr: sonarr:
image: lscr.io/linuxserver/sonarr:latest image: lscr.io/linuxserver/sonarr:latest
container_name: sonarr container_name: sonarr
environment: environment:
- PUID=1000 <<: *common-env
- PGID=1000
- TZ=America/New_York
volumes: volumes:
- /config/sonarr_config:/config - /config/sonarr:/config
- /storage:/data - /storage:/data
ports: ports:
- 8989:8989 - 8989:8989
@@ -61,15 +63,14 @@ services:
depends_on: depends_on:
- sabnzbd - sabnzbd
- prowlarr - prowlarr
lidarr: lidarr:
image: lscr.io/linuxserver/lidarr:latest image: lscr.io/linuxserver/lidarr:latest
container_name: lidarr container_name: lidarr
environment: environment:
- PUID=1000 <<: *common-env
- PGID=1000
- TZ=America/New_York
volumes: volumes:
- /config/lidarr_config:/config - /config/lidarr:/config
- /storage/theft/lidarr/MediaCover:/config/MediaCover - /storage/theft/lidarr/MediaCover:/config/MediaCover
- /storage:/data - /storage:/data
ports: ports:
@@ -79,15 +80,14 @@ services:
depends_on: depends_on:
- sabnzbd - sabnzbd
- prowlarr - prowlarr
readarr: readarr:
image: lscr.io/linuxserver/readarr:develop image: lscr.io/linuxserver/readarr:develop
container_name: readarr container_name: readarr
environment: environment:
- PUID=1000 <<: *common-env
- PGID=1000
- TZ=America/New_York
volumes: volumes:
- /config/readarr_config:/config - /config/readarr:/config
- /storage:/data - /storage:/data
ports: ports:
- 8787:8787 - 8787:8787
@@ -101,15 +101,13 @@ services:
image: lscr.io/linuxserver/readarr:develop image: lscr.io/linuxserver/readarr:develop
container_name: readarr_audio container_name: readarr_audio
environment: environment:
- PUID=1000 <<: *common-env
- GUID=1000
- TZ=America/New_York
volumes: volumes:
- /config/readarr_audio_config:/config - /config/readarr_audio:/config
- /storage:/data - /storage:/data
ports: ports:
- 8888:8888 - 8888:8787
network_mode: "host" network_mode: "bridge"
restart: unless-stopped restart: unless-stopped
depends_on: depends_on:
- sabnzbd - sabnzbd
@@ -121,10 +119,8 @@ services:
ports: ports:
- 6969:6969 - 6969:6969
environment: environment:
- PUID=1000 <<: *common-env
- PGID=1000 UMASK: 002
- UMASK=002
- TZ=America/New_York
volumes: volumes:
- /config/whisparr:/config - /config/whisparr:/config
- /storage:/data - /storage:/data
@@ -138,16 +134,14 @@ services:
container_name: whisparrv1 container_name: whisparrv1
image: docker.io/hotio/whisparr:v1 image: docker.io/hotio/whisparr:v1
ports: ports:
- 6969:7069 - 7069:6969
environment: environment:
- PUID=1000 <<: *common-env
- PGID=1000 UMASK: 002
- UMASK=002
- TZ=America/New_York
volumes: volumes:
- /config/whisparrv1:/config - /config/whisparrv1:/config
- /storage:/data - /storage:/data
network_mode: "host" network_mode: "bridge"
restart: unless-stopped restart: unless-stopped
depends_on: depends_on:
- sabnzbd - sabnzbd
@@ -159,9 +153,7 @@ services:
restart: unless-stopped restart: unless-stopped
network_mode: service:vpn network_mode: service:vpn
environment: environment:
- PUID=1000 <<: *common-env
- PGID=1000
- TZ=America/New_York
volumes: volumes:
- /storage/:/data - /storage/:/data
- /config/deluge:/config - /config/deluge:/config
@@ -183,13 +175,94 @@ services:
- 8112:8112 - 8112:8112
command: "-r 10.0.11.0/24" 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: sabnzbd-exporter:
image: msroest/sabnzbd_exporter image: msroest/sabnzbd_exporter
container_name: sabnzbd-exporter container_name: sabnzbd-exporter
environment: environment:
- SABNZBD_BASEURLS=http://dl.homelab.lan:8080/sabnzbd/ <<: *common-env
- SABNZBD_APIKEYS=${SABNZBD_APIKEY} SABNZBD_BASEURLS: http://dl.homelab.lan:8080/sabnzbd/
- TZ=America/Detroit SABNZBD_APIKEYS: ${SABNZBD_APIKEY}
ports: ports:
- 9387:9387 - 9387:9387
restart: always restart: always
@@ -200,6 +273,7 @@ services:
image: ghcr.io/onedr0p/exportarr:latest image: ghcr.io/onedr0p/exportarr:latest
command: ["sonarr"] command: ["sonarr"]
environment: environment:
<<: *common-env
PORT: 9707 PORT: 9707
URL: "http://dl.homelab.lan:8989" URL: "http://dl.homelab.lan:8989"
APIKEY: ${SONARR_APIKEY} APIKEY: ${SONARR_APIKEY}
@@ -213,6 +287,7 @@ services:
image: ghcr.io/onedr0p/exportarr:latest image: ghcr.io/onedr0p/exportarr:latest
command: ["radarr"] command: ["radarr"]
environment: environment:
<<: *common-env
PORT: 9708 PORT: 9708
URL: "http://dl.homelab.lan:7878" URL: "http://dl.homelab.lan:7878"
APIKEY: ${RADARR_APIKEY} APIKEY: ${RADARR_APIKEY}
@@ -226,6 +301,7 @@ services:
image: ghcr.io/onedr0p/exportarr:latest image: ghcr.io/onedr0p/exportarr:latest
command: ["lidarr"] command: ["lidarr"]
environment: environment:
<<: *common-env
PORT: 9709 PORT: 9709
URL: "http://dl.homelab.lan:8686" URL: "http://dl.homelab.lan:8686"
APIKEY: ${LIDARR_APIKEY} APIKEY: ${LIDARR_APIKEY}
@@ -239,6 +315,7 @@ services:
image: ghcr.io/onedr0p/exportarr:latest image: ghcr.io/onedr0p/exportarr:latest
command: ["prowlarr"] command: ["prowlarr"]
environment: environment:
<<: *common-env
PORT: 9710 PORT: 9710
URL: "http://dl.homelab.lan:9696" URL: "http://dl.homelab.lan:9696"
APIKEY: ${PROWLARR_APIKEY} APIKEY: ${PROWLARR_APIKEY}
@@ -252,6 +329,7 @@ services:
image: ghcr.io/onedr0p/exportarr:latest image: ghcr.io/onedr0p/exportarr:latest
command: ["readarr"] command: ["readarr"]
environment: environment:
<<: *common-env
PORT: 9711 PORT: 9711
URL: "http://dl.homelab.lan:8787" URL: "http://dl.homelab.lan:8787"
APIKEY: ${READARR_APIKEY} APIKEY: ${READARR_APIKEY}
@@ -268,5 +346,10 @@ services:
- /var/run/docker.sock:/var/run/docker.sock - /var/run/docker.sock:/var/run/docker.sock
restart: always restart: always
environment: environment:
<<: *common-env
WATCHTOWER_CLEANUP: "true" WATCHTOWER_CLEANUP: "true"
TZ: America/Detroit
volumes:
es:
redis:
cache: