This repository contains a Dockerized three-tier application stack with Oracle XE, a NestJS API, a React frontend, and NGINX as the edge proxy.
flowchart LR
client[Browser or API Client]
nginx[NGINX]
frontend[Frontend]
backend[Backend API]
oracle[(Oracle XE)]
client --> nginx
nginx --> frontend
nginx --> backend
backend --> oracle
Use this root README for orientation, then follow DOCKER.md for full run and lifecycle commands.
| Layer | Technology | Source |
|---|---|---|
| Reverse proxy | NGINX (containerized) | nginx/Dockerfile |
| Frontend | React 19 + Vite 6 + TypeScript | frontend/package.json |
| Backend API | NestJS + TypeORM + OracleDB driver | docker-compose.yml |
| Database | gvenzl/oracle-xe:21-slim | docker-compose.yml |
| Orchestration | Docker Compose | docker-compose.yml, docker-compose.dev.yml, docker-compose.prod.yml |
- Three-tier Docker topology with isolated
db-netand edge ingress through NGINX. - Separate development and production overlays for build/runtime differences.
- Built-in one-shot database seeding profile in development compose.
- Scripted TLS certificate generation for local production-like runs.
| Component | Description | Link |
|---|---|---|
| Frontend app | UI test client and route behavior | frontend/README.md |
- Docker Desktop running with Linux containers.
.env.developmentand/or.env.productioncreated from.env.example.- For production-like local runs: TLS files in
nginx/ssl(or generate via script).
- Base service topology is in docker-compose.yml.
- Development overrides are in docker-compose.dev.yml.
- Production overrides are in docker-compose.prod.yml.
- Utility scripts are in scripts.
Standalone service commands are component-specific and documented in component-level docs.
All Docker lifecycle commands, seed workflows, and environment setup guidance are in DOCKER.md.
The canonical variable list is .env.example.
Primary files:
.env.developmentfor development stack runs..env.productionfor production-profile runs.