MockzillaMockzilla

Das Image ausführen

Aktualisiert 29. Sept. 2026·4 Min. Lesezeit

Das Image läuft überall, wo ein Image läuft: auf einem Laptop, in einem CI-Job, auf einem Server oder in Kubernetes. Der Tab Schnellstart des Backends hat die Befehle für jede Möglichkeit, mit deiner Registry, deinem Image-Namen und deiner Version schon eingetragen.

Schnellstart: vier Möglichkeiten, das Image zu betreiben, und die Befehle für jede.

Auf dieser Seite steht <image> für dein Image mit seiner Version, etwa <deine-org>.registry.mockzilla.org/ci-payments:v2026.09.23.3.

Wie du es betreibst

  • Ausprobieren: auf einem Laptop oder in einem CI-Job. Alles bleibt im Arbeitsspeicher, ein Neustart beginnt also bei null.
  • Ein Server: behält seinen Stand über Neustarts hinweg, in einer SQLite-Datei auf einem Volume.
  • Mit Datenbank: eine compose-Datei mit PostgreSQL, damit sich mehrere Kopien eine Datenbank teilen.
  • Kubernetes: ein Deployment, das sein Image mit einem Secret lädt und seine Storage-Einstellungen aus einem zweiten liest.

Für jede brauchst du einen Registry-Zugang.

Siehe Dein Image herunterladen.

Ausprobieren

docker login <deine-org>.registry.mockzilla.org
docker run --rm -p 2200:2200 <image>

Prüf dann, ob es antwortet:

curl http://localhost:2200/healthz

Der API-Explorer liegt unter http://localhost:2200, außer du hast ihn ausgeschaltet.

Gut zu wissen

  • Es läuft auf Port 2200. Setz APP_BASE_URL auf die Adresse, die deine Clients nutzen, sonst bleiben Links in seinen Antworten relativ.
  • Es läuft als Benutzer 65532. Ein Volume, auf das es schreibt, muss diesem Benutzer gehören. Leg das Volume auf eine lokale Platte: Ein von macOS oder Windows geteilter Ordner oder NFS verliert Schreibvorgänge.
  • Es startet nicht, wenn es seinen Storage nicht erreicht. Es fällt nie auf den Arbeitsspeicher zurück.
  • docker run --rm <image> about listet, was das Image enthält: seine Build-Details, seine Services, seine SBOMs und seinen Sicherheitsbericht.

Eine Einstellung beim Start ändern

Das Image startet mit den Werten aus den Laufzeit-Standardwerten des Backends. Jeder ist eine Umgebungsvariable, und ein Wert, den du beim Start mitgibst, gewinnt gegen den im Image:

  • APP_DISABLE_UI: true blendet den API-Explorer aus.
  • ROUTER_HISTORY_ENABLED: false beendet das Aufzeichnen von Requests und Antworten.
  • ROUTER_REPLAY_ENABLED: true schaltet Replay ein.

Zum Beispiel:

docker run -e ROUTER_HISTORY_ENABLED=false <image>

Der Storage hat eigene Variablen.

Siehe Storage-Treiber.

Eigene Dateien ohne neuen Build

Das Image enthält die Kontexte, Szenarien und Service-Konfiguration, die du im Arbeitsbereich festgelegt hast. Um sie ohne neuen Build zu ändern, bind einen Ordner unter /etc/mockzilla/config ein oder zeig mit MZ_CONFIG_DIR auf einen. Er enthält einen Ordner pro Service:

services/<route key>/setup/context.yml
services/<route key>/setup/scenarios.yml
services/<route key>/setup/config.yml

Eine Datei, die du einbindest, ersetzt die gleichnamige Datei im Image. Eine Datei, die du weglässt, bleibt die aus dem Image.

Als Ausgangspunkt nimm data.mockz aus den Dateien, die zum Image gehören. Es ist ein .tar.gz mit denselben Ordnern, und tar -xzf data.mockz entpackt es.

Die Lizenz zur Laufzeit

Das Image liest seine Lizenz beim Start und prüft sie stündlich. Was es braucht, hängt davon ab, wie es seine Lizenz bekommt:

  • Im Image enthalten: nichts einzustellen. Für eine neuere Lizenz bindest du die Datei unter /etc/mockzilla/license.json ein.
  • Von uns abgerufen: einen Weg zum Hostnamen deiner Registry. Behalte ein Volume unter /var/lib/mockzilla, damit ein neuer Container mit der Lizenz startet, die schon abgerufen wurde.

Ist seine Lizenz abgelaufen, beantwortet ein laufendes Image jeden Request mit einem Fehler, und ein neues startet nicht.

Siehe Lizenzen.

Wie es weitergeht

War diese Seite hilfreich?