diff --git a/seerr/CHANGELOG.md b/seerr/CHANGELOG.md index 4c621831b..d47cfa08d 100644 --- a/seerr/CHANGELOG.md +++ b/seerr/CHANGELOG.md @@ -1,5 +1,9 @@ -## 3.1.0 (2026-02-28) +## 3.1.0-2 (22-03-2026) +- Added configurable `NODE_MEMORY_LIMIT` option (default 512 MB) to control Node.js heap size and prevent OOM kills + +## 3.1.0 (22-03-2026) +- Set default Node.js memory limit (512MB) to prevent OOM kills that caused the addon to stop responding - Update to latest version from seerr-team/seerr (changelog : https://github.com/seerr-team/seerr/releases) ## 3.0.1 (2026-02-21) diff --git a/seerr/README.md b/seerr/README.md index e9bc083f2..e4c33f64d 100644 --- a/seerr/README.md +++ b/seerr/README.md @@ -26,6 +26,7 @@ Use `env_vars` to pass extra environment variables when needed. Seerr configurat | Option | Type | Default | Description | |--------|------|---------|-------------| +| `NODE_MEMORY_LIMIT` | int | `512` | Maximum Node.js heap memory in MB. Increase if Seerr crashes with large libraries; decrease on memory-constrained systems. | | `PGID` | int | `0` | Group ID for file permissions | | `PUID` | int | `0` | User ID for file permissions | | `TZ` | str | | Timezone (e.g. `Europe/London`) | @@ -33,6 +34,7 @@ Use `env_vars` to pass extra environment variables when needed. Seerr configurat ### Example ```yaml +NODE_MEMORY_LIMIT: 512 env_vars: [] PGID: 0 PUID: 0 diff --git a/seerr/config.yaml b/seerr/config.yaml index bace019aa..4f8bb8383 100644 --- a/seerr/config.yaml +++ b/seerr/config.yaml @@ -74,6 +74,7 @@ map: - addon_config:rw name: Seerr options: + NODE_MEMORY_LIMIT: 512 env_vars: [] PGID: "0" PUID: "0" @@ -87,10 +88,11 @@ schema: env_vars: - name: match(^[A-Za-z0-9_]+$) value: str? + NODE_MEMORY_LIMIT: int PGID: int PUID: int TZ: str? slug: seerr udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/seerr -version: "3.1.0" +version: "3.1.0-2" diff --git a/seerr/rootfs/etc/services.d/seerr/run b/seerr/rootfs/etc/services.d/seerr/run index 0e5c17344..fc860ede5 100755 --- a/seerr/rootfs/etc/services.d/seerr/run +++ b/seerr/rootfs/etc/services.d/seerr/run @@ -4,5 +4,12 @@ set -e cd /app || exit 1 +# Set Node.js memory limit from addon option to prevent OOM kills +# NODE_MEMORY_LIMIT is exported as env var by 00-global_var.sh from config.yaml +MEMORY_LIMIT="${NODE_MEMORY_LIMIT:-512}" +if [[ "${NODE_OPTIONS:-}" != *"max-old-space-size"* ]] && [[ "${NODE_OPTIONS:-}" != *"max_old_space_size"* ]]; then + export NODE_OPTIONS="${NODE_OPTIONS:+${NODE_OPTIONS} }--max-old-space-size=${MEMORY_LIMIT}" +fi + bashio::log.info "Starting Seerr..." exec npm start