Files
Ping/backend/deploy
Admin 0623875dfa Add Ping backend
.NET 10 solution for Ping, a Discord style chat app: Domain, Application
and Infrastructure projects plus the Api host. SignalR for chat and
presence, LiveKit for call tokens, EF Core on Postgres, S3 compatible
storage for attachments, and OIDC auth shared with the Musify Zitadel
instance. Includes the Compose stack for local development.
2026-09-21 19:32:55 +02:00
..
2026-09-21 19:32:55 +02:00
2026-09-21 19:32:55 +02:00
2026-09-21 19:32:55 +02:00
2026-09-21 19:32:55 +02:00

Ping — deploy

Reuses the Zitadel and SeaweedFS containers already running for Musify instead of starting new ones. Musify's stack must be up first.

cp deploy/.env.example deploy/.env
# edit deploy/.env:
#   - ZITADEL_ADMIN_PAT_DIR must point at Musify's deploy/zitadel/.output folder
#   - S3_ACCESS_KEY / S3_SECRET_KEY must match the REAL values in Musify's own deploy/.env

docker compose -f deploy/compose.yml -f deploy/compose.dev.yml up -d

This starts Postgres, LiveKit, and the one-shot jobs (EF Core migrations, the Zitadel project/apps for Ping, the ping-storage S3 bucket) — the usual dev loop runs the API and frontend from the IDE against these.

To also build and run the API/frontend in Docker instead:

docker compose -f deploy/compose.yml -f deploy/compose.dev.yml --profile apps up -d --build

By then zitadel-init has already written AUTH_CLIENT_ID / WEB_CLIENT_ID into deploy/.env.

Ports (dev): API 5211, web 3100, Postgres 59010, LiveKit 7880 (signaling) / 7881 (RTC TCP) / 50000-50100/udp (media). Zitadel (8080) and the SeaweedFS S3 API (8333) come from Musify's own stack.