linkding/bootstrap.sh
McKenna Jones 7b03ceab98
Gracefully stop docker container when it receives SIGTERM (#368)
* add die-on-term option to uwsgi

* exec uwsgi in bootstrap.sh
2023-01-07 19:49:11 +01:00

25 lines
761 B
Bash
Executable file

#!/usr/bin/env bash
# Bootstrap script that gets executed in new Docker containers
LD_SERVER_PORT="${LD_SERVER_PORT:-9090}"
# Create data folder if it does not exist
mkdir -p data
# Run database migration
python manage.py migrate
# Generate secret key file if it does not exist
python manage.py generate_secret_key
# Create initial superuser if defined in options / environment variables
python manage.py create_initial_superuser
# Ensure the DB folder is owned by the right user
chown -R www-data: /etc/linkding/data
# Start background task processor using supervisord, unless explicitly disabled
if [ "$LD_DISABLE_BACKGROUND_TASKS" != "True" ]; then
supervisord -c supervisord.conf
fi
# Start uwsgi server
exec uwsgi --http :$LD_SERVER_PORT uwsgi.ini