added healthcheck to database connection
This commit is contained in:
parent
73ce9b6ddf
commit
3947583131
3 changed files with 17 additions and 4 deletions
|
@ -6,5 +6,4 @@ UID=1000
|
|||
GID=1000
|
||||
|
||||
DATABASE_ENGINE= postgresql_psycopg2
|
||||
DATABASE_HOST=db
|
||||
DATABASE_PORT=5432
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
services:
|
||||
db:
|
||||
image: postgres:17
|
||||
container_name: djangodocker-db
|
||||
environment:
|
||||
POSTGRES_DB: ${DATABASE_NAME}
|
||||
POSTGRES_USER: ${DATABASE_USERNAME}
|
||||
|
@ -11,6 +12,12 @@ services:
|
|||
- "5432:5432"
|
||||
volumes:
|
||||
- djangodocker_data:/var/lib/postgresql/data
|
||||
healthcheck:
|
||||
test: ["CMD-SHELL", "pg_isready", "-d", "$DATABASE_NAME"]
|
||||
interval: 30s
|
||||
timeout: 60s
|
||||
retries: 5
|
||||
start_period: 80s
|
||||
|
||||
api:
|
||||
build: .
|
||||
|
@ -19,7 +26,8 @@ services:
|
|||
ports:
|
||||
- "8000:8000"
|
||||
depends_on:
|
||||
- db
|
||||
db:
|
||||
condition: service_healthy
|
||||
environment:
|
||||
DJANGO_SECRET_KEY: ${DJANGO_SECRET_KEY}
|
||||
DEBUG: ${DEBUG}
|
||||
|
|
|
@ -30,8 +30,13 @@ then
|
|||
DATABASE_PASSWORD=$(tr -dc 'A-Za-z0-9' < /dev/urandom | head -c 15)
|
||||
fi
|
||||
|
||||
echo "user is $DATABASE_USERNAME"
|
||||
echo "pass is $DATABASE_PASSWORD"
|
||||
echo "DATABASE_NAME is ${PROJECT_NAME}"
|
||||
|
||||
SECRET_KEY=$(tr -dc 'A-Za-z0-9' < /dev/urandom | head -c 50)
|
||||
{
|
||||
echo "DATABASE_HOST=${PROJECT_NAME}-db"
|
||||
echo "DATABASE_NAME=${PROJECT_NAME}"
|
||||
echo "DATABASE_USERNAME=${DATABASE_USERNAME}"
|
||||
echo "DATABASE_PASSWORD=${DATABASE_PASSWORD}"
|
||||
|
@ -47,6 +52,7 @@ echo "===== STARTING DOCKER ====="
|
|||
docker compose up -d --build
|
||||
|
||||
echo "===== MIGRATING DATABASE ====="
|
||||
echo "Running: docker exec -ti ${PROJECT_NAME}-api ./manage.py migrate"
|
||||
docker exec -ti "${PROJECT_NAME}-api" ./manage.py migrate
|
||||
|
||||
echo "===== CREATE SUPERUSER ====="
|
||||
|
|
Loading…
Add table
Reference in a new issue