⚙️ Infrastructure

Services overview

ServiceManagerPort / routePurpose
nginxsystemd:443TLS termination and public routing
SvelteKit frontendsystemd127.0.0.1:3000 via /Web UI, lobby, matchmaking, game shell
Quartz wikistatic files + watcherssot.funday.ggssot.funday.gg/publicThis documentation site
TraefikK3s kube-system:32443 internal edgeK8s ingress and WebSocket routing
NakamaK3s funday-platform7349, 7350, 7351, 9100Auth, RPCs, match handlers, metrics
PostgreSQLK3s postgresql5432Real Nakama database
RedisK3s funday-platform6379Cache/session/pub-sub support
GrafanaK3s monitoring/grafana/Dashboards
PrometheusK3s monitoring/prometheus/Metrics and alert rules
Ompcord/Amy daemonNode/systemd-style daemonDiscord + local processAI agent bridge
Terminal bridgesystemd7681 / /terminal-ws/Browser PTY terminal bridge

Nakama runtime layout

/home/usr/funday/nakama-modules
  └─ mounted at /nakama/data/modules
 
/home/usr/funday/games
  └─ mounted under /nakama/data/modules/games
 
heroiclabs/nakama:3.32.0
  └─ starts with --runtime.path=/nakama/data/modules

Health checks

ComponentCheck
Frontendcurl -sf http://127.0.0.1:3000/health
Nakama public routecurl -sf https://funday.gg/v2/healthcheck
Nakama pod readiness/liveness/healthcheck on port 7350
nginx config reload gatesudo nginx -t && sudo systemctl reload nginx

Database guardrail

FieldCurrent value
Namespacepostgresql
Databasenakama
Usernakama
Servicepostgres.postgresql.svc.cluster.local:5432

⚠️ The legacy funday-platform/funday database is stale. Never point Nakama at it.

Key config files

PathPurpose
/etc/nginx/sites-enabled/fundayMain Funday edge routing
/etc/nginx/snippets/funday-traefik-subpaths.confK8s subpath proxy rules
/home/usr/funday/ssot.funday.gg/wiki.nginx.confssot.funday.gg static wiki vhost
/home/usr/funday/ssot.funday.gg/quartz-wiki.serviceQuartz watch/build service
/home/usr/funday/gitops/apps/nakama-config.yamlNakama deployment/config
/home/usr/funday/nakama-modules/index.tsNakama runtime registration
/home/usr/funday/games/_platform/server/game_registry.tsGame ID → match handler mapping

1 item under this folder.