komga + audiobookshelf: revert to root (user:1000 fallback)
Live try-then-fallback: pinning user 1000:1000 crash-loops both — their named config/metadata volumes are Docker-created root-owned and the pinned process can't write them (komga: SQLite /config open fails; audiobookshelf: EACCES mkdir /metadata/logs; neither has a PUID-style root-init chown). Reverted to root; they rely on the setgid 2775 userdata dirs (files land group 1000 → FileBrowser browses/reads). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -10,16 +10,16 @@
|
|||||||
# Storage layout (felhom userdata convention):
|
# Storage layout (felhom userdata convention):
|
||||||
# Hangoskönyvek → ${USERDATA_PATH}/media/audiobooks (írható)
|
# Hangoskönyvek → ${USERDATA_PATH}/media/audiobooks (írható)
|
||||||
# Podcastok → ${USERDATA_PATH}/media/podcasts (írható)
|
# Podcastok → ${USERDATA_PATH}/media/podcasts (írható)
|
||||||
# Run-identity: user 1000:1000 so files land group-writable for the shared content group
|
# Run-identity: ROOT (fallback). user "1000:1000" was tried but the image creates its /metadata named
|
||||||
# (GID 1000); the userdata dirs are setgid 2775. If the image fails to start healthy as
|
# volume as root at init and fails (`EACCES mkdir /metadata/logs`) when pinned to 1000. So it runs as
|
||||||
# 1000, the controller/operator reverts to root and relies on setgid (see REPORT).
|
# root and relies on the setgid 2775 userdata dirs (files land group 1000 → FileBrowser can browse/read).
|
||||||
|
# (Verified live; see REPORT.)
|
||||||
|
|
||||||
services:
|
services:
|
||||||
audiobookshelf:
|
audiobookshelf:
|
||||||
image: ghcr.io/advplyr/audiobookshelf:2.19.5
|
image: ghcr.io/advplyr/audiobookshelf:2.19.5
|
||||||
container_name: audiobookshelf
|
container_name: audiobookshelf
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
user: "1000:1000"
|
|
||||||
environment:
|
environment:
|
||||||
- TZ=Europe/Budapest
|
- TZ=Europe/Budapest
|
||||||
volumes:
|
volumes:
|
||||||
|
|||||||
@@ -9,15 +9,16 @@
|
|||||||
#
|
#
|
||||||
# Storage layout (felhom userdata convention):
|
# Storage layout (felhom userdata convention):
|
||||||
# Képregénytár → ${USERDATA_PATH}/media/comics (írható)
|
# Képregénytár → ${USERDATA_PATH}/media/comics (írható)
|
||||||
# Run-identity: user 1000:1000 for the shared content group (GID 1000); userdata dirs are
|
# Run-identity: ROOT (fallback). user "1000:1000" was tried but the gotson/komga image creates its
|
||||||
# setgid 2775. Try-then-fallback to root if it won't start healthy as 1000 (see REPORT).
|
# SQLite /config DB as root at init and cannot open it when pinned to 1000 (no PUID-style chown) —
|
||||||
|
# the container crash-loops. So it runs as root and relies on the setgid 2775 userdata dirs: files it
|
||||||
|
# writes land group 1000 so FileBrowser + group members can READ/browse them. (Verified live; see REPORT.)
|
||||||
|
|
||||||
services:
|
services:
|
||||||
komga:
|
komga:
|
||||||
image: gotson/komga:1.20.0
|
image: gotson/komga:1.20.0
|
||||||
container_name: komga
|
container_name: komga
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
user: "1000:1000"
|
|
||||||
environment:
|
environment:
|
||||||
- TZ=Europe/Budapest
|
- TZ=Europe/Budapest
|
||||||
volumes:
|
volumes:
|
||||||
|
|||||||
Reference in New Issue
Block a user