servala-portal/docker/run.sh

28 lines
728 B
Bash

#!/bin/sh -e
# Create required directories with appropriate permissions
mkdir -p /app/run/caddy /app/run/gunicorn
# Set Caddy config location
export XDG_CONFIG_HOME="/app/config"
# Set uv cache location so that it runs properly on OpenShift
export UV_CACHE_DIR="/app/.uvcache"
echo "Applying database migrations"
uv run src/manage.py migrate
echo "Starting Caddy"
exec caddy run --config /app/config/caddy/Caddyfile --adapter caddyfile 2>&1 &
echo "Starting Gunicorn"
exec \
gunicorn \
-w 4 \
--chdir /app/src \
--access-logfile - \
--error-log - \
--capture-output \
--pythonpath /app/.venv/lib/python3.13/site-packages/ \
--bind unix:/app/run/gunicorn.sock \
servala.wsgi:application