Fix review feedback: use /config, scope chmod, gate chown

- Use DATA_DIR=/config (config:rw map) per maintainer request
- Scope chmod to /entrypoint.sh and cont-init.d instead of whole FS
- Gate chown -R behind .initialized marker to avoid slow restarts
This commit is contained in:
Pierre
2026-03-06 09:31:32 +01:00
parent c4374e2c90
commit 3aaac1f178
3 changed files with 9 additions and 4 deletions

View File

@@ -63,7 +63,8 @@ COPY --from=ha_tools /out/ /
# Add rootfs # Add rootfs
COPY rootfs/ / COPY rootfs/ /
RUN find /. -type f \( -name "*.sh" \) -print -exec chmod +x {} \; RUN chmod +x /entrypoint.sh \
&& find /etc/cont-init.d /etc/cont-finish.d -type f -name "*.sh" -exec chmod +x {} \; 2>/dev/null || true
# Install bashio standalone # Install bashio standalone
RUN BASHIO_VERSION="0.14.3" && \ RUN BASHIO_VERSION="0.14.3" && \

View File

@@ -71,7 +71,7 @@ ingress_stream: true
init: false init: false
panel_icon: mdi:movie-search panel_icon: mdi:movie-search
map: map:
- addon_config:rw - config:rw
name: Maintainerr name: Maintainerr
options: options:
env_vars: [] env_vars: []

View File

@@ -26,10 +26,14 @@ fi
# ─── Setup persistent data directory ───────────────────────────────────────── # ─── Setup persistent data directory ─────────────────────────────────────────
# /opt/data is a Docker VOLUME in the upstream image and cannot be removed. # /opt/data is a Docker VOLUME in the upstream image and cannot be removed.
# Maintainerr supports the DATA_DIR env var to redirect data storage. # Maintainerr supports the DATA_DIR env var to redirect data storage.
DATA_DIR="/addon_configs/maintainerr" DATA_DIR="/config"
echo "[Maintainerr] Setting up data directory: $DATA_DIR" echo "[Maintainerr] Setting up data directory: $DATA_DIR"
mkdir -p "$DATA_DIR" mkdir -p "$DATA_DIR"
# Only chown on first run to avoid slow startup on large directories
if [ ! -f "$DATA_DIR/.initialized" ]; then
chown -R node:node "$DATA_DIR" chown -R node:node "$DATA_DIR"
touch "$DATA_DIR/.initialized"
fi
export DATA_DIR export DATA_DIR
# ─── Start Maintainerr as unprivileged node user ───────────────────────────── # ─── Start Maintainerr as unprivileged node user ─────────────────────────────