--- name: ezarr services: sonarr: image: lscr.io/linuxserver/sonarr:latest container_name: sonarr environment: - PUID=${SONARR_UID} - PGID=${MEDIACENTER_GID} - UMASK=002 - TZ=${TIMEZONE} volumes: - ${ROOT_DIR}/config/sonarr-config:/config - ${ROOT_DIR}/data:/data ports: - "8989:8989" restart: unless-stopped radarr: image: lscr.io/linuxserver/radarr:latest container_name: radarr environment: - PUID=${RADARR_UID} - PGID=${MEDIACENTER_GID} - UMASK=002 - TZ=${TIMEZONE} volumes: - ${ROOT_DIR}/config/radarr-config:/config - ${ROOT_DIR}/data:/data ports: - "7878:7878" restart: unless-stopped lidarr: image: lscr.io/linuxserver/lidarr:latest container_name: lidarr environment: - PUID=${LIDARR_UID} - PGID=${MEDIACENTER_GID} - UMASK=002 - TZ=${TIMEZONE} volumes: - ${ROOT_DIR}/config/lidarr-config:/config - ${ROOT_DIR}/data:/data ports: - "8686:8686" restart: unless-stopped readarr: image: lscr.io/linuxserver/readarr:develop container_name: readarr environment: - PUID=${READARR_UID} - PGID=${MEDIACENTER_GID} - UMASK=002 - TZ=${TIMEZONE} volumes: - ${ROOT_DIR}/config/readarr-config:/config - ${ROOT_DIR}/data:/data ports: - "8787:8787" restart: unless-stopped mylar3: image: lscr.io/linuxserver/mylar3:latest container_name: mylar3 environment: - PUID=${MYLAR_UID} - PGID=${MEDIACENTER_GID} - UMASK=002 volumes: - ${ROOT_DIR}/config/mylar-config:/config - ${ROOT_DIR}/data:/data ports: - "8090:8090" restart: unless-stopped audiobookshelf: image: ghcr.io/advplyr/audiobookshelf:latest container_name: audiobookshelf environment: - user=${AUDIOBOOKSHELF_UID}:${MEDIACENTER_GID} - TZ=${TIMEZONE} volumes: - ${ROOT_DIR}/config/audiobookshelf:/config - ${ROOT_DIR}/data/media/audiobooks:/audiobooks - ${ROOT_DIR}/data/media/podcasts:/podcasts - ${ROOT_DIR}/data/media/audiobookshelf-metadata:/metadata ports: - "13378:80" restart: unless-stopped bazarr: image: lscr.io/linuxserver/bazarr:latest container_name: bazarr environment: - PUID=${BAZARR_UID} - PGID=${MEDIACENTER_GID} - TZ=${TIMEZONE} volumes: - ${ROOT_DIR}/config/bazarr-config:/config - ${ROOT_DIR}/data/media:/media ports: - "6767:6767" restart: unless-stopped overseerr: image: sctx/overseerr:latest container_name: overseerr environment: - PUID=${OVERSEERR_UID} - PGID=${MEDIACENTER_GID} - UMASK=002 - TZ=${TIMEZONE} volumes: - ${ROOT_DIR}/config/overseerr-config:/app/config ports: - "5055:5055" restart: unless-stopped jellyseerr: image: fallenbagel/jellyseerr:latest container_name: jellyseerr environment: - PUID=${JELLYSEERR_UID} - PGID=${MEDIACENTER_GID} - UMASK=002 - TZ=${TIMEZONE} volumes: - ${ROOT_DIR}/config/jellyseerr-config:/app/config ports: - "5056:5055" restart: unless-stopped prowlarr: image: lscr.io/linuxserver/prowlarr:develop container_name: prowlarr environment: - PUID=${PROWLARR_UID} - PGID=${MEDIACENTER_GID} - UMASK=002 - TZ=${TIMEZONE} volumes: - ${ROOT_DIR}/config/prowlarr-config:/config ports: - "9696:9696" restart: unless-stopped homarr: container_name: homarr image: ghcr.io/homarr-labs/homarr:latest restart: unless-stopped volumes: - /var/run/docker.sock:/var/run/docker.sock # Optional, only if you want docker integration - ./homarr/appdata:/appdata environment: - SECRET_ENCRYPTION_KEY= ports: - "7575:7575" jackett: image: lscr.io/linuxserver/jackett:latest container_name: jackett environment: - PUID=${JACKETT_UID} - PGID=${MEDIACENTER_GID} - UMASK=002 - TZ=${TIMEZONE} volumes: - ${ROOT_DIR}/config/jackett-config:/config ports: - 9117:9117 restart: unless-stopped flaresolverr: image: ghcr.io/flaresolverr/flaresolverr:latest container_name: flaresolverr environment: - LOG_LEVEL=${LOG_LEVEL:-info} - LOG_HTML=${LOG_HTML:-false} - CAPTCHA_SOLVER=${CAPTCHA_SOLVER:-none} - TZ=${TIMEZONE} ports: - "8191:8191" restart: unless-stopped plex: image: lscr.io/linuxserver/plex:latest container_name: plex network_mode: host environment: - PUID=${PLEX_UID} - PGID=${MEDIACENTER_GID} - VERSION=docker - PLEX_CLAIM=${PLEX_CLAIM} volumes: - ${ROOT_DIR}/config/plex-config:/config - ${ROOT_DIR}/data/media:/media restart: unless-stopped tautulli: image: lscr.io/linuxserver/tautulli:latest container_name: tautulli # commented out because plex can also run outside of docker #depends_on: # - plex environment: - PUID=${UID} - PGID=${MEDIACENTER_GID} - TZ=${TIMEZONE} volumes: - ${ROOT_DIR}/config/tautulli-config:/config ports: - "8181:8181" restart: unless-stopped jellyfin: image: lscr.io/linuxserver/jellyfin:latest container_name: jellyfin environment: - PUID=${UID} - PGID=${MEDIACENTER_GID} - UMASK=002 - TZ=${TIMEZONE} volumes: - ${ROOT_DIR}/config/jellyfin-config:/config - ${ROOT_DIR}/data/media:/data ports: - "8096:8096" restart: unless-stopped qbittorrent: image: lscr.io/linuxserver/qbittorrent:latest container_name: qbittorrent environment: - PUID=${QBITTORRENT_UID} - PGID=${MEDIACENTER_GID} - UMASK=002 - TZ=${TIMEZONE} - WEBUI_PORT=8080 volumes: - ${ROOT_DIR}/config/qbittorrent-config:/config - ${ROOT_DIR}/data/torrents:/data/torrents ports: - "8080:8080" - "6881:6881" - "6881:6881/udp" restart: unless-stopped sabnzbd: image: lscr.io/linuxserver/sabnzbd:latest container_name: sabnzbd environment: - PUID=${SABNZBD_UID} - PGID=${MEDIACENTER_GID} - UMASK=002 - TZ=${TIMEZONE} volumes: - ${ROOT_DIR}/config/sabnzbd-config:/config - ${ROOT_DIR}/data/usenet:/data/usenet ports: - "8081:8080" restart: unless-stopped