66 lines
1.7 KiB
YAML
66 lines
1.7 KiB
YAML
# =============================================================================
|
||
# Dev-Overrides – wird von "docker compose" automatisch mit gemerged.
|
||
# Für reine Produktion: `docker compose -f docker-compose.yml up -d`
|
||
# =============================================================================
|
||
# Wichtig: Nur "web" hat einen build-Block. worker/beat teilen das gleiche
|
||
# Image und dürfen daher KEINEN build-Override haben – sonst versucht Bake,
|
||
# sie eigenständig zu bauen und scheitert mangels Dockerfile-Kontext.
|
||
# =============================================================================
|
||
|
||
services:
|
||
web:
|
||
build:
|
||
target: dev
|
||
args:
|
||
APP_UID: "${APP_UID:-1000}"
|
||
APP_GID: "${APP_GID:-1000}"
|
||
command: ["python", "manage.py", "runserver", "0.0.0.0:8000"]
|
||
environment:
|
||
DJANGO_SETTINGS_MODULE: config.settings.dev
|
||
ROLE: web
|
||
ports:
|
||
- "127.0.0.1:8000:8000"
|
||
- "127.0.0.1:5678:5678"
|
||
volumes:
|
||
- ./app:/app:cached
|
||
- static_files:/app/staticfiles
|
||
- media_files:/app/media
|
||
read_only: false
|
||
healthcheck:
|
||
disable: true
|
||
|
||
worker:
|
||
command: ["celery", "-A", "config", "worker", "--loglevel=debug", "--concurrency=1"]
|
||
environment:
|
||
DJANGO_SETTINGS_MODULE: config.settings.dev
|
||
ROLE: worker
|
||
volumes:
|
||
- ./app:/app:cached
|
||
- media_files:/app/media
|
||
read_only: false
|
||
healthcheck:
|
||
disable: true
|
||
|
||
beat:
|
||
environment:
|
||
DJANGO_SETTINGS_MODULE: config.settings.dev
|
||
volumes:
|
||
- ./app:/app:cached
|
||
read_only: false
|
||
|
||
nginx:
|
||
depends_on:
|
||
web:
|
||
condition: service_started
|
||
|
||
db:
|
||
ports:
|
||
- "127.0.0.1:5432:5432"
|
||
|
||
redis:
|
||
ports:
|
||
- "127.0.0.1:6379:6379"
|
||
|
||
backup:
|
||
profiles: ["never"]
|