#!/bin/sh set -e # Bind-mounted data directories (e.g. ./data next to the compose file) are # created root-owned by Docker, but the app runs as the unprivileged `node` # user. When we start as root: fix ownership of DATA_DIR, then drop # privileges. When started with a custom --user, just run as-is. DATA_DIR="${DATA_DIR:-/app/data}" if [ "$(id -u)" = "0" ]; then mkdir -p "$DATA_DIR" chown -R node:node "$DATA_DIR" exec setpriv --reuid=node --regid=node --init-groups "$@" fi exec "$@"