Die gesamte Umgebung läuft über Docker Compose im Projektordner
/home/administrator/DMS. Alle Befehle dort ausführen.
| Dienst | Aufgabe | Erreichbar |
|---|---|---|
proxy | interner nginx, teilt die Pfade auf | 192.168.20.50:8000 |
web | Django-Anwendung (Beschaffungsverwaltung) | hinter dem Proxy (/) |
db | PostgreSQL-Datenbank | nur intern |
wiki | DokuWiki (dieses Wiki) | über Proxy als /dokuwiki, Wartung …:8001 |
Der Einstieg ist einheitlich 192.168.20.50:8000 (bzw. über die Domain
dms.schulen-lraes.de). Der interne Proxy leitet /dokuwiki an das Wiki
und alles andere an Django. Der externe nginx terminiert das HTTPS und reicht
die Domain an diesen Proxy weiter.
# alles starten docker compose up -d # alles stoppen docker compose down # nach Code-Änderung die Anwendung neu bauen docker compose up -d --build web
docker compose exec web python manage.py migrate docker compose exec web python manage.py createsuperuser docker compose exec web python manage.py rollen_einrichten
docker compose exec web python manage.py test docker compose exec web ruff check .
Vor jedem Commit prüft ein Git-Hook automatisch Formatierung und Tests.
docker compose logs -f web docker compose logs -f wiki
Wichtig sind zwei Docker-Volumes:
postgres_data – die Datenbank (alle Bestellungen, Nutzer, Rollen).dokuwiki_data – dieses Wiki (Seiten, Konten, Konfiguration).Beide sollten in die regelmäßige Server-Sicherung einbezogen werden.