Skip to content

Server & Infrastructure Guide

Purpose

This guide defines how server-side infrastructure is managed, updated, and monitored. It covers the full lifecycle from Docker packaging to Grafana observability.


Workflow (Infra-as-Code)

  1. Branch: Create a feature branch from dev.
  2. Identify: Pinpoint the component (Traefik, Redis, MinIO, etc.).
  3. Impact: Confirm operational risk and network boundaries.
  4. Config: Update files in the /infra or docker-compose layer.
  5. Test: Validate locally using docker-compose up.
  6. PR: Open a PR with clear "Deployment Impact" notes.

Infrastructure Components

Layer Technology Role
Runtime Docker Containerized service isolation
Routing Traefik SSL, CORS, and Blue-Green routing
Storage PostgreSQL Primary relational data
Monitoring Grafana PLG Stack (Prometheus, Loki, Grafana)

Definition of Done

Server Checklist
  • [ ] Service configuration is reproducible and versioned.
  • [ ] Deployment risk is documented (e.g. downtime required?).
  • [ ] Monitoring impact considered (new dashboard needed?).
  • [ ] Rollback plan is clear.
  • [ ] CI/CD container build tests pass.

Monitoring & Logging

Collects numeric data (CPU, RAM, Request counts). Every new service must expose a /metrics endpoint.

Aggregates all container logs. Use docker logs labels to ensure logs are correctly tagged in Grafana.

The single pane of glass. Ensure new infrastructure changes are reflected in the System Health dashboard.