Betrieb

Aktualisierungen

Daten sichern, das laufende Image festhalten, dann ziehen oder neu bauen, ohne Projekte zu verlieren.

TraDoc speichert Projekte, Ausgaben und den SQLite-Zustand unter data/ (/app/data im Container). Sichere dieses Verzeichnis vor jedem Update. Führe docker compose down -v nie aus und lösche ./data nicht als Teil eines normalen Updates.

Vor jedem Update

  • Exportiere wichtige Arbeiten.
  • Sichere data/.
  • Notiere den aktuellen Commit oder Image-Digest.
  • Stelle sicher, dass kein Projekt läuft.

Ein GHCR-Image festhalten

docker compose images
docker image inspect --format '{{.RepoDigests}}' ghcr.io/lucas-lepajollec/tradoc:latest

Bewahre diesen Digest oder das sha-<vollständiger-commit>-Tag. Das ist das Rollback-Ziel.

Veröffentlichtes Image (docker-compose.yml)

docker compose pull
docker compose up -d
docker compose logs --tail 100 tradoc

Bestätige /health, die Anbieterverbindung, die Projektliste und einen kleinen Export.

Zum Zurückrollen:

Ändere die Compose-Zeile image: und erstelle den Dienst neu:

image: ghcr.io/lucas-lepajollec/tradoc:sha-<full-commit>
docker compose up -d

Erzeuge kein v1.0.0-Tag, um eine alte Instanz wiederherzustellen.

Lokaler Build

git pull --ff-only
docker compose -f docker-compose.yml -f docker-compose.build.yml up -d --build

Die standardmäßige Compose-Datei lädt das veröffentlichte Image. Das explizite Build-Override ersetzt es bei einem Quellcode-Checkout durch tradoc:local.

Git-Checkout

git status --short
git pull --ff-only
.\.venv\Scripts\python.exe -m pip install -r requirements.txt
npm --prefix web ci
npm --prefix web run build
.\.venv\Scripts\python.exe -m unittest discover -s tests -p "test_*.py"

Führe git reset --hard nicht aus, um unverstandene lokale Änderungen zu lösen. Sichere oder prüfe sie vor dem Update.

Danach

Behalte die vorherige Sicherung, bis die Validierung abgeschlossen ist.