Files
bus-manager/docker-compose.yml
T

52 lines
1.4 KiB
YAML

services:
db:
image: postgres:16-alpine
restart: unless-stopped
volumes:
- postgres_data:/var/lib/postgresql/data
environment:
POSTGRES_DB: ${SQL_DATABASE:-busmanager}
POSTGRES_USER: ${SQL_USER:-busmanager}
POSTGRES_PASSWORD: ${SQL_PASSWORD}
healthcheck:
test: ["CMD-SHELL", "pg_isready -U ${SQL_USER:-busmanager}"]
interval: 5s
timeout: 5s
retries: 5
web:
build: .
restart: unless-stopped
ports:
- "${APP_PORT:-8000}:8000"
depends_on:
db:
condition: service_healthy
environment:
SECRET_KEY: ${SECRET_KEY}
DEBUG: ${DEBUG:-False}
ALLOWED_HOSTS: ${ALLOWED_HOSTS:-localhost}
SQL_ENGINE: django.db.backends.postgresql
SQL_DATABASE: ${SQL_DATABASE:-busmanager}
SQL_USER: ${SQL_USER:-busmanager}
SQL_PASSWORD: ${SQL_PASSWORD}
SQL_HOST: db
SQL_PORT: 5432
STATIC_ROOT: /app/staticfiles
EMAIL_HOST: ${EMAIL_HOST:-}
EMAIL_PORT: ${EMAIL_PORT:-25}
# Optional: Azure AD SSO
AZURE_CLIENT_ID: ${AZURE_CLIENT_ID:-}
AZURE_CLIENT_SECRET: ${AZURE_CLIENT_SECRET:-}
AZURE_REDIRECT_URI: ${AZURE_REDIRECT_URI:-}
AZURE_AUTHORITY: ${AZURE_AUTHORITY:-}
# Optional: Telstra SMS
TELSTRA_CLIENT_ID: ${TELSTRA_CLIENT_ID:-}
TELSTRA_CLIENT_SECRET: ${TELSTRA_CLIENT_SECRET:-}
volumes:
- static_files:/app/staticfiles
volumes:
postgres_data:
static_files: