Hallo Stroke

Deployment Overview

How the three components are containerized and deployed.

Container topology

Loading diagram...
ComponentBuildRuntimePort
Frontendnode:24-bookworm → static buildnginx:alpine3003:80
Backendgolang:1.24-bookworm → stripped binarydebian:bookworm-slim (non-root appuser)3001
Databasepostgres:18 (tuned postgresql.conf)5432 (internal)

Production endpoints

EnvironmentFrontendBackend
Devhttp://localhost:3000 (CRA) / :3003 (nginx)http://localhost:3001/api
Prodhttps://hallostroke.orghttps://caef.cs.ui.ac.id/backend/api

Dev-only image storage

Both frontend and backend serve uploaded images from local disk (build/uploads/). For production, swap utils/saveImage.go for S3/GCS and serve via CDN.

See:

  • Docker — compose files and build details
  • CI — GitHub Actions workflow

On this page