v0.1.1 — docker volume permissions fix
Patch release fixing a container-permissions bug in v0.1.0.
What broke in v0.1.0
docker run ghcr.io/pouriamrt/claude-mesh/relay:v0.1.0 init failed with `SqliteError: unable to open database file (SQLITE_CANTOPEN)` on a fresh named volume. Root cause: the distroless nonroot user (UID 65532) couldn't write to `/data` because a freshly-initialized named volume inherited root:root ownership.
Fix
Dockerfile now stages a pre-chowned `/seed-data` directory in the build stage and COPYs it into `/data` in the final image. Docker's volume-initialization semantics mean fresh named volumes now inherit nonroot ownership on first use, so better-sqlite3 can open the DB.
Upgrade
docker pull ghcr.io/pouriamrt/claude-mesh/relay:v0.1.1
docker stop mesh-relay && docker rm mesh-relay
docker run -d --name mesh-relay --restart unless-stopped \
-p 8443:8443 -v mesh-data:/data \
ghcr.io/pouriamrt/claude-mesh/relay:v0.1.1If you previously used the `--user 0:0` workaround from the bug thread, drop that flag on the new image.
Workaround for anyone stuck on v0.1.0
Run with `--user 0:0` for both the init and the long-running server (loses the nonroot hardening but unblocks the database create):
docker run --rm -it --user 0:0 -v mesh-data:/data \
ghcr.io/pouriamrt/claude-mesh/relay:v0.1.0 init
docker run -d --name mesh-relay --user 0:0 -p 8443:8443 \
-v mesh-data:/data ghcr.io/pouriamrt/claude-mesh/relay:v0.1.0