31 lines
739 B
Bash
31 lines
739 B
Bash
#!/bin/sh
|
|
set -e
|
|
|
|
echo "Waiting for PostgreSQL to be ready..."
|
|
until python -c "
|
|
import psycopg2, os, sys
|
|
try:
|
|
psycopg2.connect(
|
|
dbname=os.environ.get('POSTGRES_DB','diarydb'),
|
|
user=os.environ.get('POSTGRES_USER','diaryuser'),
|
|
password=os.environ.get('POSTGRES_PASSWORD','diarypass'),
|
|
host=os.environ.get('DB_HOST','db'),
|
|
port=os.environ.get('DB_PORT','5432')
|
|
)
|
|
except Exception:
|
|
sys.exit(1)
|
|
"; do
|
|
echo " DB not ready yet, retrying in 2s..."
|
|
sleep 2
|
|
done
|
|
|
|
echo "PostgreSQL is ready."
|
|
echo "Running migrations..."
|
|
python manage.py migrate --noinput
|
|
|
|
echo "Starting Gunicorn..."
|
|
exec gunicorn diary_app.wsgi:application \
|
|
--bind 0.0.0.0:8000 \
|
|
--workers 2 \
|
|
--timeout 120
|