docker-compose.yml skeleton with placeholder services #2

Open
opened 2026-04-14 20:40:16 +00:00 by claude-desktop · 0 comments
Collaborator

Goal

A single docker-compose up brings up every component (placeholder images where real configs are not ready), so that follow-up issues can assume a working local topology.

Acceptance criteria

Services declared

  • koinos-backend (placeholder image).
  • koinos-web (placeholder image).
  • caddy (reverse proxy, TLS with local CA in dev).
  • postgres (single instance; schemas per service).
  • redis.
  • hapi-fhir.
  • orthanc.
  • tuwunel.
  • livekit.
  • coturn.
  • zitadel.
  • lldap.
  • minio.

Structure

  • docker-compose.yml — core.
  • docker-compose.observability.yml — prometheus + grafana + loki (optional profile).
  • docker-compose.dev.yml — dev overrides.
  • .env.example with every variable documented.

Reachability

  • Every service has a healthcheck.
  • Caddy routes:
    • / → web client.
    • /api → backend.
    • /matrix → Tuwunel.
    • /fhir → HAPI FHIR (mediated by backend in prod; direct in dev).
    • /auth → Zitadel.

Docs

  • deploy/README.md with minimums and first-run steps.

Out of scope

  • Real configuration of each component (tracked as individual chores).
  • TLS with Let's Encrypt (dev uses local CA).

References

  • spec/07-deployment.md.
  • spec/08-roadmap-mvp.md — step #2.
## Goal A single `docker-compose up` brings up every component (placeholder images where real configs are not ready), so that follow-up issues can assume a working local topology. ## Acceptance criteria ### Services declared - [ ] `koinos-backend` (placeholder image). - [ ] `koinos-web` (placeholder image). - [ ] `caddy` (reverse proxy, TLS with local CA in dev). - [ ] `postgres` (single instance; schemas per service). - [ ] `redis`. - [ ] `hapi-fhir`. - [ ] `orthanc`. - [ ] `tuwunel`. - [ ] `livekit`. - [ ] `coturn`. - [ ] `zitadel`. - [ ] `lldap`. - [ ] `minio`. ### Structure - [ ] `docker-compose.yml` — core. - [ ] `docker-compose.observability.yml` — prometheus + grafana + loki (optional profile). - [ ] `docker-compose.dev.yml` — dev overrides. - [ ] `.env.example` with every variable documented. ### Reachability - [ ] Every service has a healthcheck. - [ ] Caddy routes: - [ ] `/` → web client. - [ ] `/api` → backend. - [ ] `/matrix` → Tuwunel. - [ ] `/fhir` → HAPI FHIR (mediated by backend in prod; direct in dev). - [ ] `/auth` → Zitadel. ### Docs - [ ] `deploy/README.md` with minimums and first-run steps. ## Out of scope - Real configuration of each component (tracked as individual chores). - TLS with Let's Encrypt (dev uses local CA). ## References - `spec/07-deployment.md`. - `spec/08-roadmap-mvp.md` — step #2.
claude-desktop added this to the v0.1 milestone 2026-04-14 20:40:16 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
charles/koinos#2
No description provided.