Skip to content

Deployment Overview

MedRegia consists of three deployable components:

ComponentTechnologyPort
API.NET 10 / ASP.NET Core5000 (default)
FrontendVue 3 SPA served by Nginx80 (default)
DatabaseMySQL 83306

Deployment Modes

Local Development

Each component runs independently:

bash
# 1. Start DB
docker-compose -f docker-compose.override.yml up -d db

# 2. Run migrations
dotnet run --project backend/MedRegia.Migrations

# 3. Start API
dotnet run --project backend/MedRegia.API

# 4. Start frontend dev server
cd frontend && npm run dev

Full Docker Stack

All three components run in Docker. The frontend Nginx container reverse-proxies /api/* to the API container.

bash
docker-compose up --build

See Docker → for full details.

Production

In production:

  • The database should be a managed MySQL service (e.g. AWS RDS, Azure Database for MySQL) — not a container
  • Secrets are provided via environment variables — never committed to source control
  • The Nginx CORS policy should be scoped to your domain

Pre-deployment Checklist

  • [ ] Jwt:SecretKey is a random 32+ character string
  • [ ] Database password is changed from the default
  • [ ] ASPNETCORE_ENVIRONMENT is set to Production
  • [ ] CORS is restricted to your frontend domain
  • [ ] Migrations have been run against the production database
  • [ ] Frontend VITE_API_BASE_URL points to the production API

MedRegia — Pharmaceutical Vendor Management Platform