{
  "actual-budget": {
    "category": "Finance",
    "version": 1,
    "name": "Actual Budget",
    "port": 5006,
    "description": "Actual Budget is a privacy-focused personal finance and budgeting app with local-first data sync.",
    "website": "https://actualbudget.org",
    "dockerImage": "docker.io/actualbudget/actual-server:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": {
      "$REQUIRED": "/data"
    },
    "dockerEnvironment": {}
  },
  "adminer": {
    "category": "Database",
    "version": 1,
    "name": "Adminer",
    "port": 8080,
    "description": "Adminer is a compact web interface for managing SQL databases.",
    "website": "https://www.adminer.org",
    "dockerImage": "docker.io/adminer:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": {},
    "dockerEnvironment": {}
  },
  "audiobookshelf": {
    "category": "Media",
    "version": 1,
    "name": "Audiobookshelf",
    "port": 80,
    "description": "Audiobookshelf is a self-hosted server for audiobooks and podcasts with progress syncing.",
    "website": "https://www.audiobookshelf.org",
    "dockerImage": "ghcr.io/advplyr/audiobookshelf:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": [
      "$REQUIRED:/config",
      "$REQUIRED:/metadata",
      "$REQUIRED:/audiobooks",
      "$REQUIRED:/podcasts"
    ],
    "dockerEnvironment": {
      "TZ": "$TIMEZONE"
    }
  },
  "bazarr": {
    "category": "Media",
    "version": 1,
    "name": "Bazarr",
    "port": 6767,
    "description": "Bazarr manages and downloads subtitles for Sonarr and Radarr libraries.",
    "website": "https://www.bazarr.media",
    "dockerImage": "docker.io/linuxserver/bazarr:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": [
      "$REQUIRED:/config",
      "$REQUIRED:/movies",
      "$REQUIRED:/tv"
    ],
    "dockerEnvironment": {
      "PUID": "1000",
      "PGID": "1000",
      "TZ": "$TIMEZONE"
    }
  },
  "beszel": {
    "category": "Monitoring",
    "version": 1,
    "name": "Beszel",
    "port": 8090,
    "description": "Beszel is a lightweight server monitoring hub with historical metrics and alerts.",
    "website": "https://beszel.dev",
    "dockerImage": "docker.io/henrygd/beszel:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": {
      "$REQUIRED": "/beszel_data"
    },
    "dockerEnvironment": {}
  },
  "calibre-web": {
    "category": "Media",
    "version": 1,
    "name": "Calibre-Web",
    "port": 8083,
    "description": "Calibre-Web provides a clean browser interface for browsing, reading, and downloading ebooks.",
    "website": "https://github.com/janeczku/calibre-web",
    "dockerImage": "docker.io/linuxserver/calibre-web:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": [
      "$REQUIRED:/config",
      "$REQUIRED:/books"
    ],
    "dockerEnvironment": {
      "PUID": "1000",
      "PGID": "1000",
      "TZ": "$TIMEZONE"
    }
  },
  "changedetection": {
    "category": "Automation",
    "version": 1,
    "name": "changedetection.io",
    "port": 5000,
    "description": "changedetection.io watches web pages and notifies you when their content changes.",
    "website": "https://changedetection.io",
    "dockerImage": "docker.io/dgtlmoon/changedetection.io:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": {
      "$REQUIRED": "/datastore"
    },
    "dockerEnvironment": {
      "TZ": "$TIMEZONE"
    }
  },
  "couchdb": {
    "category": "Database",
    "version": 1,
    "name": "Apache CouchDB",
    "port": 5984,
    "description": "Apache CouchDB is a document database with an HTTP API and a built-in administration interface.",
    "website": "https://couchdb.apache.org",
    "dockerImage": "docker.io/couchdb:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": {
      "$REQUIRED": "/opt/couchdb/data"
    },
    "dockerEnvironment": {
      "COUCHDB_USER": "$REQUIRED",
      "COUCHDB_PASSWORD": "$REQUIRED"
    }
  },
  "dashy": {
    "category": "Dashboard",
    "version": 1,
    "name": "Dashy",
    "port": 8080,
    "description": "Dashy is a highly customizable dashboard for organizing self-hosted services and links.",
    "website": "https://dashy.to",
    "dockerImage": "docker.io/lissy93/dashy:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": {
      "$REQUIRED": "/app/user-data"
    },
    "dockerEnvironment": {
      "NODE_ENV": "production"
    }
  },
  "diagrams-net": {
    "category": "Productivity",
    "version": 1,
    "name": "diagrams.net",
    "port": 8080,
    "description": "diagrams.net is a browser-based diagramming tool for flowcharts, architecture, and technical drawings.",
    "website": "https://www.diagrams.net",
    "dockerImage": "docker.io/jgraph/drawio:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": {},
    "dockerEnvironment": {}
  },
  "directus": {
    "category": "Development",
    "version": 1,
    "name": "Directus",
    "port": 8055,
    "description": "Directus turns a SQL database into a real-time API and no-code data management app.",
    "website": "https://directus.io",
    "dockerImage": "docker.io/directus/directus:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": [
      "$REQUIRED:/directus/database",
      "$REQUIRED:/directus/uploads",
      "$REQUIRED:/directus/extensions"
    ],
    "dockerEnvironment": {
      "SECRET": "$REQUIRED",
      "DB_CLIENT": "sqlite3",
      "DB_FILENAME": "/directus/database/data.db"
    }
  },
  "excalidraw": {
    "category": "Productivity",
    "version": 1,
    "name": "Excalidraw",
    "port": 80,
    "description": "Excalidraw is a collaborative whiteboard for sketching diagrams with a hand-drawn look.",
    "website": "https://excalidraw.com",
    "dockerImage": "docker.io/excalidraw/excalidraw:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": {},
    "dockerEnvironment": {}
  },
  "filebrowser": {
    "category": "Storage",
    "version": 1,
    "name": "File Browser",
    "port": 80,
    "description": "File Browser provides a web file manager for uploading, organizing, editing, and sharing files.",
    "website": "https://filebrowser.org",
    "dockerImage": "docker.io/filebrowser/filebrowser:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": [
      "$REQUIRED:/database",
      "$REQUIRED:/srv"
    ],
    "dockerEnvironment": {}
  },
  "flaresolverr": {
    "category": "Internet",
    "version": 1,
    "name": "FlareSolverr",
    "port": 8191,
    "description": "FlareSolverr is a proxy server that helps applications bypass Cloudflare and DDoS-GUARD protection.",
    "website": "https://github.com/FlareSolverr/FlareSolverr",
    "dockerImage": "ghcr.io/flaresolverr/flaresolverr:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": {
      "$REQUIRED": "/config"
    },
    "dockerEnvironment": {
      "LOG_LEVEL": "info",
      "LOG_FILE": "none",
      "LOG_HTML": "false",
      "CAPTCHA_SOLVER": "none",
      "TZ": "$TIMEZONE"
    }
  },
  "forgejo": {
    "category": "Development",
    "version": 1,
    "name": "Forgejo",
    "port": 3000,
    "description": "Forgejo is a lightweight, community-driven Git hosting service with issues, pull requests, and packages.",
    "website": "https://forgejo.org",
    "dockerImage": "codeberg.org/forgejo/forgejo:16",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": {
      "$REQUIRED": "/data"
    },
    "dockerEnvironment": {
      "USER_UID": "1000",
      "USER_GID": "1000",
      "TZ": "$TIMEZONE"
    }
  },
  "freshrss": {
    "category": "Productivity",
    "version": 1,
    "name": "FreshRSS",
    "port": 80,
    "description": "FreshRSS is a fast, extensible feed reader for following websites and podcasts.",
    "website": "https://freshrss.org",
    "dockerImage": "docker.io/freshrss/freshrss:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": [
      "$REQUIRED:/var/www/FreshRSS/data",
      "$REQUIRED:/var/www/FreshRSS/extensions"
    ],
    "dockerEnvironment": {
      "TZ": "$TIMEZONE",
      "CRON_MIN": "3,33"
    }
  },
  "gitea": {
    "category": "Development",
    "version": 1,
    "name": "Gitea",
    "port": 3000,
    "description": "Gitea is a compact, self-hosted Git service with code review, issues, actions, and packages.",
    "website": "https://about.gitea.com",
    "dockerImage": "docker.io/gitea/gitea:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": {
      "$REQUIRED": "/data"
    },
    "dockerEnvironment": {
      "USER_UID": "1000",
      "USER_GID": "1000",
      "TZ": "$TIMEZONE"
    }
  },
  "gluetun": {
    "category": "Internet",
    "version": 1,
    "name": "Gluetun",
    "port": 8000,
    "description": "Gluetun is a lightweight VPN client with a built-in firewall and support for many VPN providers.",
    "website": "https://github.com/passteque/gluetun",
    "dockerImage": "docker.io/qmcgaw/gluetun:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": {
      "$REQUIRED": "/gluetun"
    },
    "dockerDevices": {
      "/dev/net/tun": "/dev/net/tun"
    },
    "dockerEnvironment": {
      "VPN_SERVICE_PROVIDER": "$REQUIRED",
      "VPN_TYPE": "openvpn",
      "OPENVPN_USER": "$REQUIRED",
      "OPENVPN_PASSWORD": "$REQUIRED",
      "TZ": "$TIMEZONE"
    },
    "dockerCapabilities": [
      "NET_ADMIN"
    ]
  },
  "gotify": {
    "category": "Communication",
    "version": 1,
    "name": "Gotify",
    "port": 80,
    "description": "Gotify is a simple server for sending and receiving real-time push notifications.",
    "website": "https://gotify.net",
    "dockerImage": "docker.io/gotify/server:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": {
      "$REQUIRED": "/app/data"
    },
    "dockerEnvironment": {
      "TZ": "$TIMEZONE"
    }
  },
  "grafana": {
    "category": "Monitoring",
    "version": 1,
    "name": "Grafana",
    "port": 3000,
    "description": "Grafana provides dashboards and visualizations for metrics, logs, traces, and other observability data.",
    "website": "https://grafana.com",
    "dockerImage": "docker.io/grafana/grafana:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": {
      "$REQUIRED": "/var/lib/grafana"
    },
    "dockerEnvironment": {}
  },
  "home-assistant": {
    "category": "Smart Home",
    "version": 1,
    "name": "Home Assistant",
    "port": 8123,
    "description": "Home Assistant is an open-source home automation platform focused on local control and privacy.",
    "website": "https://www.home-assistant.io",
    "dockerImage": "docker.io/homeassistant/home-assistant:stable",
    "dockerPorts": [],
    "dockerNetworkMode": "host",
    "dockerVolumes": {
      "$REQUIRED": "/config",
      "/run/dbus": "/run/dbus:ro"
    },
    "dockerEnvironment": {
      "TZ": "$TIMEZONE"
    },
    "dockerPrivileged": true
  },
  "homey-shs": {
    "category": "Smart Home",
    "version": 1,
    "name": "Homey Self-Hosted Server",
    "port": 4859,
    "description": "Homey Self-Hosted Server allows you to control all your smart home devices locally without relying on the cloud.",
    "website": "https://homey.app",
    "dockerImage": "ghcr.io/athombv/homey-shs:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "host",
    "dockerVolumes": [
      "$REQUIRED:/homey/user"
    ],
    "dockerEnvironment": {},
    "dockerPrivileged": true
  },
  "immich": {
    "category": "Media",
    "version": 1,
    "name": "Immich",
    "port": 2283,
    "description": "Immich is a self-hosted photo and video management solution.",
    "website": "https://immich.app",
    "dockerImage": "ghcr.io/immich-app/immich-server:release",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": {
      "$REQUIRED": "/data"
    },
    "dockerEnvironment": {
      "DB_HOSTNAME": "postgres",
      "DB_USERNAME": "postgres",
      "DB_PASSWORD": "$REQUIRED",
      "DB_DATABASE_NAME": "immich",
      "REDIS_HOSTNAME": "redis",
      "TZ": "$TIMEZONE"
    }
  },
  "influxdb": {
    "category": "Database",
    "version": 1,
    "name": "InfluxDB",
    "port": 8086,
    "description": "InfluxDB is a time-series database for metrics, events, and real-time analytics.",
    "website": "https://www.influxdata.com",
    "dockerImage": "docker.io/influxdb:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": [
      "$REQUIRED:/var/lib/influxdb2",
      "$REQUIRED:/etc/influxdb2"
    ],
    "dockerEnvironment": {}
  },
  "it-tools": {
    "category": "Utilities",
    "version": 1,
    "name": "IT-Tools",
    "port": 80,
    "description": "IT-Tools collects useful developer and system-administrator utilities in one browser app.",
    "website": "https://it-tools.tech",
    "dockerImage": "docker.io/corentinth/it-tools:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": {},
    "dockerEnvironment": {}
  },
  "jackett": {
    "category": "Media",
    "version": 1,
    "name": "Jackett",
    "port": 9117,
    "description": "Jackett translates tracker queries into a consistent indexer API for media applications.",
    "website": "https://github.com/Jackett/Jackett",
    "dockerImage": "docker.io/linuxserver/jackett:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": [
      "$REQUIRED:/config",
      "$REQUIRED:/downloads"
    ],
    "dockerEnvironment": {
      "PUID": "1000",
      "PGID": "1000",
      "TZ": "$TIMEZONE"
    }
  },
  "jellyfin": {
    "category": "Media",
    "version": 1,
    "name": "Jellyfin",
    "port": 8096,
    "description": "Jellyfin is a free media server for organizing and streaming movies, shows, music, and photos.",
    "website": "https://jellyfin.org",
    "dockerImage": "docker.io/jellyfin/jellyfin:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": [
      "$REQUIRED:/config",
      "$REQUIRED:/cache",
      "$REQUIRED:/media"
    ],
    "dockerEnvironment": {
      "TZ": "$TIMEZONE"
    }
  },
  "jellyseerr": {
    "category": "Media",
    "version": 1,
    "name": "Jellyseerr",
    "port": 5055,
    "description": "Jellyseerr manages media requests and integrates with Jellyfin, Sonarr, and Radarr.",
    "website": "https://docs.jellyseerr.dev",
    "dockerImage": "ghcr.io/fallenbagel/jellyseerr:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": {
      "$REQUIRED": "/app/config"
    },
    "dockerEnvironment": {
      "LOG_LEVEL": "info",
      "TZ": "$TIMEZONE"
    }
  },
  "jenkins": {
    "category": "Development",
    "version": 1,
    "name": "Jenkins",
    "port": 8080,
    "description": "Jenkins is an extensible automation server for building, testing, and deploying software.",
    "website": "https://www.jenkins.io",
    "dockerImage": "docker.io/jenkins/jenkins:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": {
      "$REQUIRED": "/var/jenkins_home"
    },
    "dockerEnvironment": {}
  },
  "kavita": {
    "category": "Media",
    "version": 1,
    "name": "Kavita",
    "port": 5000,
    "description": "Kavita is a fast, cross-platform reading server for comics, manga, and ebooks.",
    "website": "https://www.kavitareader.com",
    "dockerImage": "docker.io/jvmilazz0/kavita:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": [
      "$REQUIRED:/kavita/config",
      "$REQUIRED:/books"
    ],
    "dockerEnvironment": {
      "TZ": "$TIMEZONE"
    }
  },
  "komga": {
    "category": "Media",
    "version": 1,
    "name": "Komga",
    "port": 25600,
    "description": "Komga is a media server for comics, manga, magazines, and ebooks.",
    "website": "https://komga.org",
    "dockerImage": "docker.io/gotson/komga:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": [
      "$REQUIRED:/config",
      "$REQUIRED:/data"
    ],
    "dockerEnvironment": {
      "TZ": "$TIMEZONE"
    }
  },
  "librespeed": {
    "category": "Monitoring",
    "version": 1,
    "name": "LibreSpeed",
    "port": 80,
    "description": "LibreSpeed is a lightweight, self-hosted browser speed test with no external dependencies.",
    "website": "https://github.com/librespeed/speedtest",
    "dockerImage": "docker.io/linuxserver/librespeed:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": {
      "$REQUIRED": "/config"
    },
    "dockerEnvironment": {
      "PUID": "1000",
      "PGID": "1000",
      "TZ": "$TIMEZONE",
      "MODE": "standalone",
      "TELEMETRY": "false",
      "ENABLE_ID_OBFUSCATION": "true",
      "REDACT_IP_ADDRESSES": "false"
    }
  },
  "lidarr": {
    "category": "Media",
    "version": 1,
    "name": "Lidarr",
    "port": 8686,
    "description": "Lidarr is a music collection manager for Usenet and BitTorrent users.",
    "website": "https://lidarr.audio",
    "dockerImage": "docker.io/linuxserver/lidarr:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": [
      "$REQUIRED:/config",
      "$REQUIRED:/music",
      "$REQUIRED:/downloads"
    ],
    "dockerEnvironment": {
      "PUID": "1000",
      "PGID": "1000",
      "TZ": "$TIMEZONE"
    }
  },
  "maintainerr": {
    "category": "Media",
    "version": 1,
    "name": "Maintainerr",
    "port": 6246,
    "description": "Maintainerr applies configurable rules to manage and clean up media libraries.",
    "website": "https://maintainerr.info",
    "dockerImage": "ghcr.io/maintainerr/maintainerr:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": {
      "$REQUIRED": "/opt/data"
    },
    "dockerEnvironment": {
      "TZ": "$TIMEZONE"
    },
    "dockerUserId": 1000,
    "dockerGroupId": 1000
  },
  "mealie": {
    "category": "Productivity",
    "version": 1,
    "name": "Mealie",
    "port": 9000,
    "description": "Mealie is a recipe manager and meal planner with shopping lists and recipe imports.",
    "website": "https://mealie.io",
    "dockerImage": "ghcr.io/mealie-recipes/mealie:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": {
      "$REQUIRED": "/app/data"
    },
    "dockerEnvironment": {
      "ALLOW_SIGNUP": "false",
      "PUID": "1000",
      "PGID": "1000",
      "TZ": "$TIMEZONE"
    }
  },
  "memos": {
    "category": "Productivity",
    "version": 1,
    "name": "Memos",
    "port": 5230,
    "description": "Memos is a lightweight, privacy-first note-taking service for quickly capturing ideas.",
    "website": "https://www.usememos.com",
    "dockerImage": "ghcr.io/usememos/memos:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": {
      "$REQUIRED": "/var/opt/memos"
    },
    "dockerEnvironment": {}
  },
  "mongodb": {
    "category": "Database",
    "version": 1,
    "name": "MongoDB",
    "port": 27017,
    "description": "MongoDB is a document-oriented database for flexible, JSON-like application data.",
    "website": "https://www.mongodb.com",
    "dockerImage": "docker.io/mongo:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": {
      "$REQUIRED": "/data/db"
    },
    "dockerEnvironment": {}
  },
  "mylar3": {
    "category": "Media",
    "version": 1,
    "name": "Mylar3",
    "port": 8090,
    "description": "Mylar3 automates comic book downloads and library management with Usenet and BitTorrent clients.",
    "website": "https://github.com/mylar3/mylar3",
    "dockerImage": "docker.io/linuxserver/mylar3:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": [
      "$REQUIRED:/config",
      "$REQUIRED:/comics",
      "$REQUIRED:/downloads"
    ],
    "dockerEnvironment": {
      "PUID": "1000",
      "PGID": "1000",
      "TZ": "$TIMEZONE"
    }
  },
  "mysql": {
    "category": "Database",
    "version": 1,
    "name": "MySQL",
    "port": 3306,
    "description": "MySQL is an open-source relational database for transactional applications and general-purpose workloads.",
    "website": "https://www.mysql.com",
    "dockerImage": "docker.io/mysql:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": {
      "$REQUIRED": "/var/lib/mysql"
    },
    "dockerEnvironment": {
      "MYSQL_ROOT_PASSWORD": "$REQUIRED"
    }
  },
  "n8n": {
    "category": "Automation",
    "version": 1,
    "name": "n8n",
    "port": 5678,
    "description": "n8n is a workflow automation platform for connecting apps, APIs, and services.",
    "website": "https://n8n.io",
    "dockerImage": "docker.io/n8nio/n8n:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": {
      "$REQUIRED": "/home/node/.n8n"
    },
    "dockerEnvironment": {
      "TZ": "$TIMEZONE",
      "GENERIC_TIMEZONE": "$TIMEZONE",
      "N8N_ENFORCE_SETTINGS_FILE_PERMISSIONS": "true"
    }
  },
  "navidrome": {
    "category": "Media",
    "version": 1,
    "name": "Navidrome",
    "port": 4533,
    "description": "Navidrome is a lightweight music server compatible with Subsonic clients.",
    "website": "https://www.navidrome.org",
    "dockerImage": "docker.io/deluan/navidrome:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": [
      "$REQUIRED:/data",
      "$REQUIRED:/music:ro"
    ],
    "dockerEnvironment": {
      "ND_SCANSCHEDULE": "1h",
      "ND_LOGLEVEL": "info",
      "ND_SESSIONTIMEOUT": "24h"
    }
  },
  "nextcloud": {
    "category": "Storage",
    "version": 1,
    "name": "Nextcloud",
    "port": 80,
    "description": "Nextcloud provides private file sync, sharing, calendars, contacts, and collaboration.",
    "website": "https://nextcloud.com",
    "dockerImage": "docker.io/nextcloud:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": {
      "$REQUIRED": "/var/www/html"
    },
    "dockerEnvironment": {}
  },
  "nocodb": {
    "category": "Development",
    "version": 1,
    "name": "NocoDB",
    "port": 8080,
    "description": "NocoDB is an open-source no-code platform for building collaborative database applications.",
    "website": "https://nocodb.com",
    "dockerImage": "docker.io/nocodb/nocodb:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": {
      "$REQUIRED": "/usr/app/data"
    },
    "dockerEnvironment": {}
  },
  "node-red": {
    "category": "Automation",
    "version": 1,
    "name": "Node-RED",
    "port": 1880,
    "description": "Node-RED is a flow-based development tool for connecting hardware devices, APIs, and online services.",
    "website": "https://nodered.org",
    "dockerImage": "docker.io/nodered/node-red:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": {
      "$REQUIRED": "/data"
    },
    "dockerEnvironment": {
      "TZ": "$TIMEZONE"
    }
  },
  "nzbget": {
    "category": "Downloads",
    "version": 1,
    "name": "NZBGet",
    "port": 6789,
    "description": "NZBGet is an efficient Usenet downloader with a responsive web interface.",
    "website": "https://nzbget.com",
    "dockerImage": "docker.io/linuxserver/nzbget:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": [
      "$REQUIRED:/config",
      "$REQUIRED:/downloads"
    ],
    "dockerEnvironment": {
      "PUID": "1000",
      "PGID": "1000",
      "TZ": "$TIMEZONE"
    }
  },
  "ollama": {
    "category": "AI",
    "version": 1,
    "name": "Ollama",
    "port": 11434,
    "description": "Ollama runs open language and vision models locally through a simple API.",
    "website": "https://ollama.com",
    "dockerImage": "docker.io/ollama/ollama:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": {
      "$REQUIRED": "/root/.ollama"
    },
    "dockerEnvironment": {}
  },
  "open-webui": {
    "category": "AI",
    "version": 1,
    "name": "Open WebUI",
    "port": 8080,
    "description": "Open WebUI is a feature-rich, self-hosted interface for Ollama and OpenAI-compatible model APIs.",
    "website": "https://openwebui.com",
    "dockerImage": "ghcr.io/open-webui/open-webui:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": {
      "$REQUIRED": "/app/backend/data"
    },
    "dockerEnvironment": {
      "OLLAMA_BASE_URL": "http://ollama:11434"
    }
  },
  "pairdrop": {
    "category": "Utilities",
    "version": 1,
    "name": "PairDrop",
    "port": 3000,
    "description": "PairDrop transfers files securely between nearby devices through a browser.",
    "website": "https://pairdrop.net",
    "dockerImage": "docker.io/linuxserver/pairdrop:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": {
      "$REQUIRED": "/config"
    },
    "dockerEnvironment": {
      "PUID": "1000",
      "PGID": "1000",
      "TZ": "$TIMEZONE",
      "RATE_LIMIT": "false",
      "WS_FALLBACK": "false"
    }
  },
  "photoprism": {
    "category": "Media",
    "version": 1,
    "name": "PhotoPrism",
    "port": 2342,
    "description": "PhotoPrism is an AI-powered photo app for browsing, organizing, and sharing personal collections.",
    "website": "https://www.photoprism.app",
    "dockerImage": "docker.io/photoprism/photoprism:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": [
      "$REQUIRED:/photoprism/storage",
      "$REQUIRED:/photoprism/originals",
      "$REQUIRED:/photoprism/import"
    ],
    "dockerEnvironment": {
      "PHOTOPRISM_AUTH_MODE": "password",
      "PHOTOPRISM_ADMIN_PASSWORD": "$REQUIRED",
      "PHOTOPRISM_SITE_CAPTION": "Photos",
      "PHOTOPRISM_DISABLE_TLS": "true",
      "PHOTOPRISM_DATABASE_DRIVER": "sqlite",
      "TZ": "$TIMEZONE"
    }
  },
  "pi-hole": {
    "category": "Internet",
    "version": 1,
    "name": "Pi-hole",
    "port": 80,
    "description": "Pi-hole is a network-wide ad blocker that acts as a DNS sinkhole.",
    "website": "https://pi-hole.net",
    "dockerImage": "docker.io/pihole/pihole:latest",
    "dockerPorts": [
      {
        "host": 53,
        "container": 53,
        "protocol": "tcp"
      },
      {
        "host": 53,
        "container": 53,
        "protocol": "udp"
      }
    ],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": {
      "$REQUIRED": "/etc/pihole"
    },
    "dockerEnvironment": {
      "TZ": "$TIMEZONE",
      "FTLCONF_webserver_api_password": "$REQUIRED",
      "FTLCONF_dns_listeningMode": "all"
    }
  },
  "pinchflat": {
    "category": "Downloads",
    "version": 1,
    "name": "Pinchflat",
    "port": 8945,
    "description": "Pinchflat automatically downloads and organizes YouTube content using yt-dlp.",
    "website": "https://github.com/kieraneglin/pinchflat",
    "dockerImage": "ghcr.io/kieraneglin/pinchflat:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": [
      "$REQUIRED:/config",
      "$REQUIRED:/downloads"
    ],
    "dockerEnvironment": {
      "TZ": "$TIMEZONE"
    }
  },
  "plex": {
    "category": "Media",
    "version": 1,
    "name": "Plex Media Server",
    "port": 32400,
    "description": "Plex organizes video, music, and photos from personal media libraries and streams them to smart TVs, streaming boxes and mobile devices.",
    "website": "https://plex.tv",
    "dockerImage": "docker.io/plexinc/pms-docker:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": [
      "$REQUIRED:/config",
      "$REQUIRED:/transcode",
      "$REQUIRED:/data"
    ],
    "dockerEnvironment": {
      "TZ": "$TIMEZONE"
    }
  },
  "postgres": {
    "category": "Database",
    "version": 1,
    "name": "PostgreSQL",
    "port": 5432,
    "description": "PostgreSQL with VectorChord and pgvector extensions for Immich and general database workloads.",
    "website": "https://www.postgresql.org",
    "dockerImage": "ghcr.io/immich-app/postgres:14-vectorchord0.4.3-pgvectors0.2.0",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": {
      "$REQUIRED": "/var/lib/postgresql/data"
    },
    "dockerEnvironment": {
      "POSTGRES_USER": "postgres",
      "POSTGRES_PASSWORD": "$REQUIRED",
      "POSTGRES_DB": "immich",
      "POSTGRES_INITDB_ARGS": "--data-checksums"
    }
  },
  "privatebin": {
    "category": "Utilities",
    "version": 1,
    "name": "PrivateBin",
    "port": 8080,
    "description": "PrivateBin is a minimalist encrypted paste service where the server cannot read stored content.",
    "website": "https://privatebin.info",
    "dockerImage": "docker.io/privatebin/nginx-fpm-alpine:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": {
      "$REQUIRED": "/srv/data"
    },
    "dockerEnvironment": {}
  },
  "prometheus": {
    "category": "Monitoring",
    "version": 1,
    "name": "Prometheus",
    "port": 9090,
    "description": "Prometheus collects time-series metrics and provides a powerful query language and alerting model.",
    "website": "https://prometheus.io",
    "dockerImage": "docker.io/prom/prometheus:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": {
      "$REQUIRED": "/prometheus"
    },
    "dockerEnvironment": {}
  },
  "prowlarr": {
    "category": "Media",
    "version": 1,
    "name": "Prowlarr",
    "port": 9696,
    "description": "Prowlarr manages indexers and synchronizes them with Sonarr, Radarr, Lidarr, and Readarr.",
    "website": "https://prowlarr.com",
    "dockerImage": "docker.io/linuxserver/prowlarr:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": {
      "$REQUIRED": "/config"
    },
    "dockerEnvironment": {
      "PUID": "1000",
      "PGID": "1000",
      "TZ": "$TIMEZONE"
    }
  },
  "qbittorrent": {
    "category": "Downloads",
    "version": 1,
    "name": "qBittorrent",
    "port": 8080,
    "description": "qBittorrent is a lightweight BitTorrent client with a full-featured web interface.",
    "website": "https://www.qbittorrent.org",
    "dockerImage": "docker.io/linuxserver/qbittorrent:latest",
    "dockerPorts": [
      {
        "host": 6881,
        "container": 6881,
        "protocol": "tcp"
      },
      {
        "host": 6881,
        "container": 6881,
        "protocol": "udp"
      }
    ],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": [
      "$REQUIRED:/config",
      "$REQUIRED:/downloads"
    ],
    "dockerEnvironment": {
      "PUID": "1000",
      "PGID": "1000",
      "TZ": "$TIMEZONE",
      "WEBUI_PORT": "8080",
      "TORRENTING_PORT": "6881"
    }
  },
  "radarr": {
    "category": "Media",
    "version": 1,
    "name": "Radarr",
    "port": 7878,
    "description": "Radarr is a movie collection manager for Usenet and BitTorrent users.",
    "website": "https://radarr.video",
    "dockerImage": "docker.io/linuxserver/radarr:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": [
      "$REQUIRED:/config",
      "$REQUIRED:/movies",
      "$REQUIRED:/downloads"
    ],
    "dockerEnvironment": {
      "PUID": "1000",
      "PGID": "1000",
      "TZ": "$TIMEZONE"
    }
  },
  "readarr": {
    "category": "Media",
    "version": 1,
    "name": "Readarr",
    "port": 8787,
    "description": "Readarr is an ebook and audiobook collection manager for Usenet and BitTorrent users.",
    "website": "https://readarr.com",
    "dockerImage": "docker.io/linuxserver/readarr:develop",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": [
      "$REQUIRED:/config",
      "$REQUIRED:/books",
      "$REQUIRED:/downloads"
    ],
    "dockerEnvironment": {
      "PUID": "1000",
      "PGID": "1000",
      "TZ": "$TIMEZONE"
    }
  },
  "recyclarr": {
    "category": "Media",
    "version": 1,
    "name": "Recyclarr",
    "port": null,
    "description": "Recyclarr automatically synchronizes TRaSH Guide settings with Sonarr and Radarr.",
    "website": "https://recyclarr.dev",
    "dockerImage": "ghcr.io/recyclarr/recyclarr:8",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": {
      "$REQUIRED": "/config"
    },
    "dockerEnvironment": {
      "TZ": "$TIMEZONE",
      "CRON_SCHEDULE": "@daily",
      "RECYCLARR_CREATE_CONFIG": "true"
    },
    "dockerUserId": 1000,
    "dockerGroupId": 1000
  },
  "redis": {
    "category": "Database",
    "version": 1,
    "name": "Redis",
    "port": 6379,
    "description": "Redis is an in-memory data store used for caching, queues, streaming, and fast application state.",
    "website": "https://redis.io",
    "dockerImage": "docker.io/redis:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": {
      "$REQUIRED": "/data"
    },
    "dockerEnvironment": {}
  },
  "sabnzbd": {
    "category": "Downloads",
    "version": 1,
    "name": "SABnzbd",
    "port": 8080,
    "description": "SABnzbd automates downloading, verifying, repairing, extracting, and filing Usenet downloads.",
    "website": "https://sabnzbd.org",
    "dockerImage": "docker.io/linuxserver/sabnzbd:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": [
      "$REQUIRED:/config",
      "$REQUIRED:/downloads",
      "$REQUIRED:/incomplete-downloads"
    ],
    "dockerEnvironment": {
      "PUID": "1000",
      "PGID": "1000",
      "TZ": "$TIMEZONE"
    }
  },
  "scrypted": {
    "category": "Smart Home",
    "version": 1,
    "name": "Scrypted",
    "port": 11080,
    "description": "Scrypted is a high-performance home video integration platform and NVR for cameras and smart-home ecosystems.",
    "website": "https://www.scrypted.app",
    "dockerImage": "docker.io/koush/scrypted:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "host",
    "dockerVolumes": {
      "$REQUIRED": "/server/volume"
    },
    "dockerEnvironment": {
      "TZ": "$TIMEZONE"
    },
    "dockerPrivileged": true
  },
  "searxng": {
    "category": "Internet",
    "version": 1,
    "name": "SearXNG",
    "port": 8080,
    "description": "SearXNG is a privacy-respecting metasearch engine that aggregates results from many search services.",
    "website": "https://docs.searxng.org",
    "dockerImage": "docker.io/searxng/searxng:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": {
      "$REQUIRED": "/etc/searxng"
    },
    "dockerEnvironment": {}
  },
  "seerr": {
    "category": "Media",
    "version": 1,
    "name": "Seerr",
    "port": 5055,
    "description": "Seerr manages media discovery and requests for Jellyfin, Plex, and Emby libraries.",
    "website": "https://seerr.dev",
    "dockerImage": "ghcr.io/seerr-team/seerr:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": {
      "$REQUIRED": "/app/config"
    },
    "dockerEnvironment": {
      "LOG_LEVEL": "info",
      "TZ": "$TIMEZONE",
      "PORT": "5055"
    }
  },
  "shiori": {
    "category": "Productivity",
    "version": 1,
    "name": "Shiori",
    "port": 8080,
    "description": "Shiori is a simple bookmark manager with readable-page archiving and full-text search.",
    "website": "https://github.com/go-shiori/shiori",
    "dockerImage": "ghcr.io/go-shiori/shiori:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": {
      "$REQUIRED": "/srv/shiori"
    },
    "dockerEnvironment": {}
  },
  "sonarr": {
    "category": "Media",
    "version": 1,
    "name": "Sonarr",
    "port": 8989,
    "description": "Sonarr is a TV series collection manager for Usenet and BitTorrent users.",
    "website": "https://sonarr.tv",
    "dockerImage": "docker.io/linuxserver/sonarr:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": [
      "$REQUIRED:/config",
      "$REQUIRED:/tv",
      "$REQUIRED:/downloads"
    ],
    "dockerEnvironment": {
      "PUID": "1000",
      "PGID": "1000",
      "TZ": "$TIMEZONE"
    }
  },
  "stirling-pdf": {
    "category": "Utilities",
    "version": 1,
    "name": "Stirling PDF",
    "port": 8080,
    "description": "Stirling PDF is a locally hosted toolbox for converting, editing, signing, and organizing PDF files.",
    "website": "https://www.stirlingpdf.com",
    "dockerImage": "docker.io/stirlingtools/stirling-pdf:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": [
      "$REQUIRED:/usr/share/tessdata",
      "$REQUIRED:/configs",
      "$REQUIRED:/logs"
    ],
    "dockerEnvironment": {
      "SECURITY_ENABLELOGIN": "true",
      "SYSTEM_DEFAULTLOCALE": "en-GB"
    }
  },
  "syncthing": {
    "category": "Storage",
    "version": 1,
    "name": "Syncthing",
    "port": 8384,
    "description": "Syncthing continuously synchronizes files directly between your devices without a central cloud.",
    "website": "https://syncthing.net",
    "dockerImage": "docker.io/syncthing/syncthing:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": [
      "$REQUIRED:/var/syncthing/config",
      "$REQUIRED:/var/syncthing/data"
    ],
    "dockerEnvironment": {
      "PUID": "1000",
      "PGID": "1000"
    }
  },
  "tautulli": {
    "category": "Media",
    "version": 1,
    "name": "Tautulli",
    "port": 8181,
    "description": "Tautulli monitors Plex activity and provides viewing history, statistics, and notifications.",
    "website": "https://tautulli.com",
    "dockerImage": "docker.io/linuxserver/tautulli:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": {
      "$REQUIRED": "/config"
    },
    "dockerEnvironment": {
      "PUID": "1000",
      "PGID": "1000",
      "TZ": "$TIMEZONE"
    }
  },
  "tdarr": {
    "category": "Media",
    "version": 1,
    "name": "Tdarr",
    "port": 8265,
    "description": "Tdarr automates media library transcoding and health checks using configurable processing nodes.",
    "website": "https://home.tdarr.io",
    "dockerImage": "ghcr.io/haveagitgat/tdarr:latest",
    "dockerPorts": [
      {
        "host": 8266,
        "container": 8266,
        "protocol": "tcp"
      }
    ],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": [
      "$REQUIRED:/app/server",
      "$REQUIRED:/app/configs",
      "$REQUIRED:/app/logs",
      "$REQUIRED:/media",
      "$REQUIRED:/temp"
    ],
    "dockerEnvironment": {
      "TZ": "$TIMEZONE",
      "PUID": "1000",
      "PGID": "1000",
      "UMASK_SET": "002",
      "serverIP": "0.0.0.0",
      "serverPort": "8266",
      "webUIPort": "8265",
      "internalNode": "true",
      "inContainer": "true",
      "ffmpegVersion": "7",
      "nodeName": "InternalNode"
    }
  },
  "timescaledb": {
    "category": "Database",
    "version": 1,
    "name": "TimescaleDB",
    "port": 5432,
    "description": "TimescaleDB is a PostgreSQL extension optimized for time-series data and demanding analytical workloads.",
    "website": "https://www.timescale.com",
    "dockerImage": "docker.io/timescale/timescaledb:latest-pg17",
    "dockerPorts": [
      {
        "host": 5432,
        "container": 5432,
        "protocol": "tcp"
      }
    ],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": {
      "$REQUIRED": "/var/lib/postgresql/data"
    },
    "dockerEnvironment": {
      "POSTGRES_PASSWORD": "$REQUIRED"
    }
  },
  "transfarr": {
    "category": "Storage",
    "version": 1,
    "name": "Transfarr",
    "port": 3000,
    "description": "Transfarr shares folders over SMB, FTP, FTPS, and SFTP with users and per-folder permissions managed through a web interface.",
    "website": "https://github.com/Transfarr/transfarr",
    "dockerImage": "ghcr.io/transfarr/transfarr:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "host",
    "dockerVolumes": [
      "$REQUIRED:/data:rw",
      "$REQUIRED:/mnt:rw"
    ],
    "dockerEnvironment": {}
  },
  "transmission": {
    "category": "Downloads",
    "version": 1,
    "name": "Transmission",
    "port": 9091,
    "description": "Transmission is a fast, easy-to-use BitTorrent client with a clean web interface.",
    "website": "https://transmissionbt.com",
    "dockerImage": "docker.io/linuxserver/transmission:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": [
      "$REQUIRED:/config",
      "$REQUIRED:/downloads",
      "$REQUIRED:/watch"
    ],
    "dockerEnvironment": {
      "PUID": "1000",
      "PGID": "1000",
      "TZ": "$TIMEZONE"
    }
  },
  "trilium": {
    "category": "Productivity",
    "version": 1,
    "name": "TriliumNext Notes",
    "port": 8080,
    "description": "TriliumNext Notes is a hierarchical knowledge base with rich notes, scripting, and strong linking.",
    "website": "https://triliumnext.github.io/Docs/",
    "dockerImage": "docker.io/triliumnext/notes:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": {
      "$REQUIRED": "/home/node/trilium-data"
    },
    "dockerEnvironment": {
      "TZ": "$TIMEZONE"
    }
  },
  "unpackerr": {
    "category": "Downloads",
    "version": 1,
    "name": "Unpackerr",
    "port": null,
    "description": "Unpackerr extracts completed downloads for Sonarr, Radarr, Lidarr, Readarr, and Whisparr.",
    "website": "https://unpackerr.zip",
    "dockerImage": "ghcr.io/unpackerr/unpackerr:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": [
      "$REQUIRED:/config",
      "$REQUIRED:/downloads"
    ],
    "dockerEnvironment": {
      "TZ": "$TIMEZONE",
      "UN_LOG_FILE": "/downloads/unpackerr.log"
    },
    "dockerUserId": 1000,
    "dockerGroupId": 1000
  },
  "uptime-kuma": {
    "category": "Monitoring",
    "version": 1,
    "name": "Uptime Kuma",
    "port": 3001,
    "description": "Uptime Kuma is a polished monitoring dashboard for websites, APIs, ports, and containers.",
    "website": "https://uptime.kuma.pet",
    "dockerImage": "docker.io/louislam/uptime-kuma:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": {
      "$REQUIRED": "/app/data"
    },
    "dockerEnvironment": {}
  },
  "vaultwarden": {
    "category": "Security",
    "version": 1,
    "name": "Vaultwarden",
    "port": 80,
    "description": "Vaultwarden is a resource-efficient, Bitwarden-compatible password manager server.",
    "website": "https://github.com/dani-garcia/vaultwarden",
    "dockerImage": "docker.io/vaultwarden/server:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": {
      "$REQUIRED": "/data"
    },
    "dockerEnvironment": {
      "SIGNUPS_ALLOWED": "false",
      "WEBSOCKET_ENABLED": "true"
    }
  },
  "verdaccio": {
    "category": "Development",
    "version": 1,
    "name": "Verdaccio",
    "port": 4873,
    "description": "Verdaccio is a lightweight private npm proxy registry for JavaScript packages.",
    "website": "https://verdaccio.org",
    "dockerImage": "docker.io/verdaccio/verdaccio:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": [
      "$REQUIRED:/verdaccio/storage",
      "$REQUIRED:/verdaccio/conf"
    ],
    "dockerEnvironment": {}
  },
  "victoria-metrics": {
    "category": "Monitoring",
    "version": 1,
    "name": "VictoriaMetrics",
    "port": 8428,
    "description": "VictoriaMetrics is a fast, cost-effective time-series database and monitoring solution.",
    "website": "https://victoriametrics.com",
    "dockerImage": "docker.io/victoriametrics/victoria-metrics:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": {
      "$REQUIRED": "/victoria-metrics-data"
    },
    "dockerEnvironment": {}
  },
  "wg-easy": {
    "category": "Internet",
    "version": 1,
    "name": "wg-easy",
    "port": 51821,
    "description": "wg-easy provides a simple web interface for managing a WireGuard VPN server.",
    "website": "https://wg-easy.github.io/wg-easy/",
    "dockerImage": "ghcr.io/wg-easy/wg-easy:latest",
    "dockerPorts": [
      {
        "host": 51820,
        "container": 51820,
        "protocol": "udp"
      }
    ],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": {
      "$REQUIRED": "/etc/wireguard",
      "/lib/modules": "/lib/modules:ro"
    },
    "dockerEnvironment": {
      "INSECURE": "true"
    },
    "dockerCapabilities": [
      "NET_ADMIN",
      "SYS_MODULE"
    ]
  },
  "whisparr": {
    "category": "Media",
    "version": 1,
    "name": "Whisparr",
    "port": 6969,
    "description": "Whisparr is an adult media collection manager for Usenet and BitTorrent users.",
    "website": "https://github.com/Whisparr/Whisparr",
    "dockerImage": "ghcr.io/hotio/whisparr:v3",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": [
      "$REQUIRED:/config",
      "$REQUIRED:/data"
    ],
    "dockerEnvironment": {
      "PUID": "1000",
      "PGID": "1000",
      "UMASK": "002",
      "TZ": "$TIMEZONE"
    }
  },
  "zigbee2mqtt": {
    "category": "Smart Home",
    "version": 1,
    "name": "Zigbee2MQTT",
    "port": 8080,
    "description": "Zigbee2MQTT bridges Zigbee devices to MQTT without requiring a proprietary gateway.",
    "website": "https://www.zigbee2mqtt.io",
    "dockerImage": "docker.io/koenkk/zigbee2mqtt:latest",
    "dockerPorts": [],
    "dockerNetworkMode": "bridge",
    "dockerVolumes": {
      "$REQUIRED": "/app/data",
      "/run/udev": "/run/udev:ro"
    },
    "dockerEnvironment": {
      "TZ": "$TIMEZONE"
    },
    "dockerPrivileged": true
  }
}