Architecture
All services run inside Docker containers on a single Ubuntu server, connected via thecoderz-net Docker bridge network. External traffic enters through Nginx on port 80 or directly to each service port.
System Diagram
Network Layout
All containers share thecoderz-net Docker bridge network. This means:
- Services communicate by container name (e.g.,
coderz-dotnet-api:8080) - No external exposure unless a port is explicitly mapped
- Redis, PostgreSQL, and Loki are internal-only by default
Data Flow: API Request
Data Flow: Metrics
Port Reference
| Port | Service | Accessible From |
|---|---|---|
| 80 | Nginx | Public |
| 3000 | Grafana | Public |
| 3100 | Loki | Internal |
| 3333 | Mintlify Docs | Public |
| 4200 | Prefect UI | Public |
| 5050 | .NET API | Public |
| 5080 | pgAdmin | Public |
| 5433 | PostgreSQL | Internal |
| 5601 | Kibana | Public |
| 8080 | cAdvisor | Internal |
| 8888 | Web API | Public |
| 9000 | k6 Runner | Public |
| 9090 | Prometheus | Public |
| 9100 | Node Exporter | Internal |
| 9200 | Elasticsearch | Internal |