bitflicker64 commented on code in PR #544: URL: https://github.com/apache/hugegraph-doc/pull/544#discussion_r4332839617
########## content/en/docs/guides/hugegraph-docker-cluster.md: ########## @@ -317,6 +317,19 @@ Standalone publishes only `8080` and `8088`; minimal HStore publishes `8620` (PD 5. **Unexpected retained data**: `docker compose down` keeps named volumes. To delete topology data too, use `docker compose down -v`. +6. **`Permission denied` after upgrading to master-built images**: PD, Store and Server images built from current master run as the non-root user + `hugegraph`, UID/GID `10001`. Volumes written by older images, which ran as root, stay owned by root. Stop with `docker compose down` (not `down -v`), + change the owner of each data volume once, then start again: + + ```bash + docker run --rm -u 0 --entrypoint chown -v <volume>:/data <new-image> -R 10001:10001 /data + ``` + + Do not upgrade running containers with a plain `up -d`: Compose reattaches the anonymous volume holding the previous image's root-owned application + directory. Run `down` first, or use `up -d --renew-anon-volumes`. A host directory used as a bind mount must be writable by UID `10001`. On Kubernetes, Review Comment: Minor: "A host directory used as a bind mount must be writable by UID `10001`" sits in the entry for upgrading data written by older root images, but unlike the volume case above it gives no command, and the quickstarts this points back to use a non-recursive `sudo chown 10001:10001 /path/to/data` (`hugegraph-pd.md`, `hugegraph-hstore.md`). Someone who previously ran the master-built PD or Store with `-v /path/to/data:/hugegraph-pd/pd_data` (or `/hugegraph-store/storage`) has root-owned RocksDB and Raft files inside that directory; `mkdir -p` is a no-op and the non-recursive `chown` changes only the top directory, so the `10001` image still fails with `Permission denied` on those files. Please say that a host directory written by an older image needs `sudo chown -R 10001:10001 <dir>`, here and in the CN entry (`作为 bind mount 的宿主机目录必须对 UID 10001 可写`). -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
