mirror of
https://github.com/paparazzi/paparazzi.git
synced 2026-02-07 03:52:47 +08:00
daba128 changed the Dockerfile to install gosu from the official Ubuntu repositories but did not change the path in entrypoint.sh
gosu ist now located at /usr/sbin/gosu and no longer at /usr/local/bin/gosu
27 lines
981 B
Bash
Executable File
27 lines
981 B
Bash
Executable File
#!/bin/bash
|
|
|
|
# If user exists, change user and group ids, otherwise add new local user
|
|
# Either use the LOCAL_USER_ID if passed in at runtime or
|
|
# fallback
|
|
|
|
USER_NAME=${USERNAME:-pprz}
|
|
USER_ID=${LOCAL_USER_ID:-1000}
|
|
GROUP_ID=${LOCAL_GROUP_ID:-1000}
|
|
|
|
if id -u $USER_NAME > /dev/null 2>&1; then
|
|
echo "Starting with UID: $USER_ID and GID: $GROUP_ID"
|
|
# modify existing pprz user instead of creating new one
|
|
#usermod -o --uid $USER_ID $USER_NAME
|
|
groupmod -o --gid $GROUP_ID $USER_NAME
|
|
# usermod goes through all files in home dir and changes the userid, which takes a while
|
|
# since we don't want/need that here, directly change the user id in /etc/passwd
|
|
sed -i "s/$USER_NAME:x:\([0-9]*\):\([0-9]*\):/$USER_NAME:x:$USER_ID:\2:/g" /etc/passwd
|
|
else
|
|
echo "Adding new user $USER_NAME with UID: $USER_ID and GID: $GROUP_ID"
|
|
useradd --shell /bin/bash -u $USER_ID -o -c "" -m $USER_NAME
|
|
fi
|
|
|
|
export HOME=/home/$USER_NAME
|
|
|
|
exec /usr/sbin/gosu $USER_NAME "$@"
|