Sign inSign up

reddravenn/keepalive-manager

By reddravenn

•Updated over 1 year ago

Image
0

928

reddravenn/keepalive-manager repository overview

⁠keepalive-manager

A lightweight app designed to manage broken symbolic links and maintain the integrity of your media libraries. It integrates with services like Plex, Jellyfin, Emby providing functionality for handling missing files and generating activity on content.

⁠Key features:
  • Broken symlink management: Automatically reinject or remove content when a symlink is broken.
  • Mount downtime detection: A safety mechanism is in place to handle downtime on mounts. If the mount is empty or inaccessible, the file is considered missing due to downtime and no actions are taken.
  • Plex, Jellyfin, Emby, Overseerr, Jellyseerr and arrs compatibility: Automatically updates libraries.
  • Scheduled tasks: Configure scan intervals and activity generation based on your needs.
  • Discord webhook notifications: For important event logging and execution statistics report.

⁠Example configuration (docker-compose.yaml)
services:
  keepalive-manager:
    image: reddravenn/keepalive-manager:latest
    container_name: keepalive-manager
    environment:
      LOG_LEVEL: "INFO"                                # Log level: DEBUG for detailed logs, INFO for standard logs

      DEFAULT_DISAPPEAR_ACTION: "reinject"             # Default action when a file disappears: "reinject" or "remove"
      CRON_SCHEDULE: "0 0 * * *"                       # Interval between each scan to perform the default action and generate activities if necessary
      
      GENERATE_ACTIVITY: "false"                       # Enable or disable activity generation
      GENERATE_ACTIVITY_INTERVAL_DAYS: "7"             # Interval in days for activity generation

      SOURCE_DIRECTORY: "/path/to/data"                # Path where the original files of the symlink are located

      DISCORD_WEBHOOK_URL: ""                          # Notifications for important event logging

      PLEX_URL: "http://plex:port"                     # Remove if not needed
      PLEX_TOKEN: ""                                   # 

      JELLYFIN_URL: "http://jellyfin:port"             # Remove if not needed
      JELLYFIN_API_KEY: ""                             # 

      EMBY_URL: "http://emby:port"                     # Remove if not needed
      EMBY_API_KEY: ""                                 #

      OVERSEERR_URL: "https://overseerr:port"          # Remove if not needed
      OVERSEERR_API_KEY: = ""                          #

      JELLYSEERR_URL: "https://jellyseerr:port"        # Remove if not needed
      JELLYSEERR_API_KEY: = ""                         #

      ARR_1_TYPE: "radarr/sonarr"                      # Type of ARR instance to use (radarr or sonarr)
      ARR_1_CONTAINER_NAME: "radarr/sonarr_container"  # Name of the Radarr or Sonarr container
      ARR_1_URL: "http://radarr/sonarr:port"           # URL of the Radarr or Sonarr service
      ARR_1_API_KEY: "your_api_key_radarr/sonarr"      # API key for Radarr or Sonarr
      ARR_1_PATH: "/path/to/radarr/sonarr/root_folder" # Path to the Radarr or Sonarr root folder
      ARR_1_PLEX_LIBRARY_ID: "X"                       # Plex library ID associated with the ARR_1_PATH, remove if not needed
      ARR_1_EMBY_LIBRARY_ID: "X"                       # Emby library ID associated with the ARR_1_PATH, remove if not needed
      ARR_1_JELLYFIN_LIBRARY_ID: "X"                   # Jellyfin library ID associated with the ARR_1_PATH, remove if not needed

      # ARR_2_TYPE: "radarr/sonarr"
      # ... you can add a new ARR instance with identifier ARR_X_ if needed
    volumes:
      - /data:/data                                    # Mount the folder containing SOURCE_DIRECTORY as well as ARR_X_PATH
      - keepalive-manager-db:/app/db                   # Volume for storing the database data
      - /var/run/docker.sock:/var/run/docker.sock  # Allows the container to access the Docker socket to manage ARR instances
    restart: unless-stopped

volumes:
  keepalive-manager-db:
    name: keepalive-manager-db                         # Defines the volume for the container's database

Tag summary

Content type

Image

Digest

sha256:4d344cf1d…

Size

48.6 MB

Last updated

over 1 year ago

docker pull reddravenn/keepalive-manager