Make Django wait until database is ready. Probes for Docker and Kubernetes.
Provides a Django management command to check whether the primary database is ready to accept connections.
Run this command in a Kubernetes or OpenShift Init Container to make your Django application wait until the database is available (e.g. to run database migrations).
Why Should I Use This App?
wait_for_database is a single command for all database engines Django supports. It automatically checks the database you have configured in your Django project settings. No need to code a specific wait command for Postgres, MariaDB, Oracle, etc., no need to pull a database engine specific container just for running the database readiness check.
The easiest way to install django-probes is with pip
$ pip install django-probes
- Add django-probes to your Django application:
INSTALLED_APPS = [ ... 'django_probes', ]
2. Add an Init Container to your Kubernetes/OpenShift deployment configuration, which calls the wait_for_database management command:
- kind: Deployment apiVersion: apps/v1 spec: template: spec: initContainers: - name: check-db-ready image: my-django-app:latest envFrom: - secretRef: name: django command: ['python', 'manage.py', 'wait_for_database']
Command Line Options
The management command comes with sane defaults, which you can override if needed:
|–timeout, -t:||how long to wait for the database before timing out (seconds), default: 180|
|–stable, -s:||how long to observe whether connection is stable (seconds), default: 5|
|delay between checks when database is down (seconds), default: 2|
|delay between checks when database is up (seconds), default: 1|
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
|Filename, size & hash SHA256 hash help||File type||Python version||Upload date|
|django_probes-1.2.0-py2-none-any.whl (5.5 kB) Copy SHA256 hash SHA256||Wheel||py2|
|django_probes-1.2.0.tar.gz (4.8 kB) Copy SHA256 hash SHA256||Source||None|