Operations runbook
Status and logs
Section titled “Status and logs”docker compose psdocker compose logs --tail=200 api kong hapi-fhir-jpaserver-startdocker compose logs --since=30m fhir-transformer hapi-fhir-postgres kong-postgresAdd --follow only during an attended investigation; logs may contain identifiers and must be handled as sensitive operational data.
Restart one service
Section titled “Restart one service”docker compose restart <SERVICE>docker compose ps <SERVICE>docker compose logs --tail=100 <SERVICE>Verify the service endpoint after restart. Restarting a database can interrupt dependent services.
Stop and start
Section titled “Stop and start”docker compose stopdocker compose startstop preserves containers and data. Do not use docker compose down -v; -v can remove managed volumes. This stack also uses host bind-mounted data directories, which require separate backup handling.
Reinitialize Kong
Section titled “Reinitialize Kong”First query existing services and routes. The shell scripts use POST and are not idempotent, so rerunning them may produce 409 conflicts. Run them only to create missing objects, then repeat verification.
Incident handoff
Section titled “Incident handoff”Capture time/timezone, source revision, image digests, docker compose ps, sanitized logs, last known healthy time, recent configuration changes, and failed verification step. Never paste secrets or patient payloads into tickets.

