Wie die Kollegen von DevOps SE darauf hingewiesen haben, sollte ’u´ richtig eingesetzt werden:
su -c "$0" "$ZOO_USER" "$@"
In diesem Bash-Skript unter Linux Alpine haben sie (Zeile 8):
exec su-exec "$ZOO_USER" "$0" "$@"
Soweit ich weiß, su-exec
ist jedoch ein Apache httpd abhängig - kann ich die Installation unter Ubuntu vermeiden und eine einfachere Alternative verwenden?
Ich habe bisher getestet:
su -c "$0 $@" $ZOO_USER
Aber dann zeigt dieser Docker-Befehl, dass ich eine Art Escape- / Anführungsfehler habe.
CMD ["zkServer.sh", "start-foreground"]
was zu folgender Ausgabe führt. Was ist der Unterschied zum Original, was gut funktioniert?
No passwd entry for user 'start-foreground'
Wie die Kollegen von DevOps SE darauf hingewiesen haben, sollte ’u´ richtig eingesetzt werden:
su -c "$0" "$ZOO_USER" "$@"