From e1e8ff89cd3a4036e7d250bbf7ebc653183fd0e4 Mon Sep 17 00:00:00 2001 From: diyaa Date: Sun, 26 Jul 2026 20:57:05 +0200 Subject: [PATCH] Fix relay storage permissions --- IMPLEMENTATION_STATUS.md | 1 + relay-server/Dockerfile | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/IMPLEMENTATION_STATUS.md b/IMPLEMENTATION_STATUS.md index 1090ebb..96ac662 100644 --- a/IMPLEMENTATION_STATUS.md +++ b/IMPLEMENTATION_STATUS.md @@ -196,6 +196,7 @@ - Extended WebSocket serialization coverage to preserve the sender timestamp used for offline message delivery. - The relay now defaults to the production Traefik certificate resolver (`myresolver`) and allows a host-specific override through `TRAEFIK_CERT_RESOLVER`. - Corrected the production hostname to `fchaty.diyaa.de` in the relay route and macOS application HTTP and WebSocket clients. +- `relay-server/Dockerfile` initializes all persistent-data paths as the unprivileged `node` user, preventing pairing, queue, and upload write failures on newly created volumes. ## Bug Fixes — Post-Review ✅ diff --git a/relay-server/Dockerfile b/relay-server/Dockerfile index 769771f..94cb284 100644 --- a/relay-server/Dockerfile +++ b/relay-server/Dockerfile @@ -10,7 +10,8 @@ COPY --from=deps /app/node_modules ./node_modules COPY src/ ./src/ COPY package.json ./ -RUN mkdir -p /data/files +RUN mkdir -p /data/files /data/queue /data/pairing \ + && chown -R node:node /data USER node