Initial add from Dockers repo
This commit is contained in:
37
entry.sh
Executable file
37
entry.sh
Executable file
@@ -0,0 +1,37 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
set -e
|
||||
|
||||
[ "$DEBUG" == 'true' ] && set -x
|
||||
|
||||
# Generate password if hash not set
|
||||
if [ ! -z "$FTP_PASSWORD" -a -z "$FTP_PASSWORD_HASH" ]; then
|
||||
FTP_PASSWORD_HASH=$(echo "$FTP_PASSWORD" | mkpasswd -s -m sha-512)
|
||||
fi
|
||||
|
||||
if [ ! -z "$FTP_USER" -a ! -z "$FTP_PASSWORD_HASH" ]; then
|
||||
/add-virtual-user.sh -d "$FTP_USER" "$FTP_PASSWORD_HASH"
|
||||
fi
|
||||
|
||||
function vsftpd_stop {
|
||||
echo "Received SIGINT or SIGTERM. Shutting down vsftpd"
|
||||
# Get PID
|
||||
pid=$(cat /var/run/vsftpd/vsftpd.pid)
|
||||
# Set TERM
|
||||
kill -SIGTERM "${pid}"
|
||||
# Wait for exit
|
||||
wait "${pid}"
|
||||
# All done.
|
||||
echo "Done"
|
||||
}
|
||||
|
||||
if [ "$1" == "vsftpd" ]; then
|
||||
trap vsftpd_stop SIGINT SIGTERM
|
||||
echo "Running $@"
|
||||
$@ &
|
||||
pid="$!"
|
||||
echo "${pid}" > /var/run/vsftpd/vsftpd.pid
|
||||
wait "${pid}" && exit $?
|
||||
else
|
||||
exec "$@"
|
||||
fi
|
||||
Reference in New Issue
Block a user