Files
BetterDesk/docker/show-admin-credentials.sh
T
UNITRONIX cdf950130a fix(docker): repair fresh install path for GHCR and single layout (#299)
Sync install.sh image pin with VERSION, fix split DB_PATH/SQLITE_READONLY, resolve AIO container for password reset, and write bootstrap files as betterdesk under cap_drop.
2026-07-24 18:07:20 +02:00

27 lines
1.0 KiB
Bash
Executable File

#!/bin/sh
# Print bootstrap admin credentials from the shared credentials file.
# Docker quick-start: .admin_credentials is mode 0600 and owned by betterdesk (UID 10001).
# docker compose exec runs as root, but cap_drop:ALL removes CAP_DAC_OVERRIDE, so root
# cannot read the file. Re-exec as betterdesk when invoked as root (issue #195).
set -e
if [ "$(id -u)" = "0" ]; then
if command -v su-exec >/dev/null 2>&1; then
exec su-exec betterdesk "$0" "$@"
fi
# All-in-one image historically lacked su-exec; busybox su works with SETUID.
exec su -s /bin/sh betterdesk -c 'exec "$0" "$@"' -- "$0" "$@"
fi
for creds_file in /opt/rustdesk/.admin_credentials /app/data/.admin_credentials; do
if [ -f "$creds_file" ] && [ -r "$creds_file" ]; then
cat "$creds_file"
exit 0
fi
done
echo "No readable admin credentials file found." >&2
echo " Checked: /opt/rustdesk/.admin_credentials, /app/data/.admin_credentials" >&2
echo " Wait for first boot to finish, then retry. Or: docker compose logs server" >&2
exit 1