slight entrypoint enhancements for debugging purposes

This commit is contained in:
Simon Ungar Felding 2024-12-10 10:21:15 +01:00
parent a7c8aee026
commit 51a8142c11
2 changed files with 14 additions and 9 deletions

View File

@ -19,18 +19,21 @@ if [[ $1 == init ]]; then
/protonmail/proton-bridge --cli $@
else
# delete lock files if they exist - this can happen if the container is restarted forcefully
find $HOME -name "*.lock" -delete
if [[ $HOME == / ]] then
echo "When running rootless, you must set a home dir as the HOME env var. We recommend /data. Make sure it is writable by the user running the container (currently id is $(id -u) and HOME is $HOME)."
# give friendly error if you don't have protonmail data
find $HOME | grep -q . || (echo "No files found - start the container with the init command, or copy/mount files into it at $HOME first. Sleeping 5 minutes before exiting so you have time to copy the files over." && sleep 300 && exit 1)
# give friendly error if the user doesn't own the data
if [[ $(id -u) != 0 ]]; then
if [[ `find $HOME/.* -not -user $(id -u) | wc -l` != 0 ]]; then
echo "You do not own the data in $HOME. Please chown it to $(id -u), run the container as the owner of the data or run the container as root." && exit 1
echo "You do not own the data in $HOME. Please chown it to $(id -u), run the container as the owner of the data or run the container as root."
exit 1
fi
fi
# delete lock files if they exist - this can happen if the container is restarted forcefully
find $HOME -name "*.lock" -delete
# socat will make the conn appear to come from 127.0.0.1
# ProtonMail Bridge currently expects that.
# It also allows us to bind to the real ports :)

View File

@ -33,19 +33,21 @@ if [[ $1 == init ]]; then
protonmail-bridge --cli $@
else
# delete lock files if they exist - this can happen if the container is restarted forcefully
find $HOME -name "*.lock" -delete
if [[ $HOME == / ]] then
echo "When running rootless, you must set a home dir as the HOME env var. We recommend /data. Make sure it is writable by the user running the container (currently id is $(id -u) and HOME is $HOME)."
# give friendly error if you don't have protonmail data
find $HOME | grep -q . || (echo "No files found - start the container with the init command, or copy/mount files into it at $HOME first. Sleeping 5 minutes before exiting so you have time to copy the files over." && sleep 300 && exit 1)
# give friendly error if the user doesn't own the data
if [[ $(id -u) != 0 ]]; then
if [[ `find $HOME/.* -not -user $(id -u) | wc -l` != 0 ]]; then
echo "You do not own the data in $HOME. Please chown it to $(id -u), run the container as the owner of the data or run the container as root." && exit 1
echo "You do not own the data in $HOME. Please chown it to $(id -u), run the container as the owner of the data or run the container as root."
exit 1
fi
fi
# delete lock files if they exist - this can happen if the container is restarted forcefully
find $HOME -name "*.lock" -delete
# socat will make the conn appear to come from 127.0.0.1
# ProtonMail Bridge currently expects that.
# It also allows us to bind to the real ports :)