Add local production infra lab

This commit is contained in:
thanhnv
2026-07-06 12:00:27 +09:00
parent ec261bcbc5
commit fc736aabf1
16 changed files with 623 additions and 23 deletions
@@ -0,0 +1,29 @@
# CASAN Local Production-Like Infra Lab
This Docker Compose stack emulates the external infrastructure needed to move
CASAN Tier 2 from "needs infra" to locally testable production-like controls.
## Services
| Service | Local URL | Purpose |
|---|---|---|
| Vault dev | `http://127.0.0.1:18200` | KMS Transit signing/rotation/non-exportable keys |
| Mock IdP/OIDC | `http://127.0.0.1:18081` | RS256 JWT + JWKS for approval identity |
| MinIO | `http://127.0.0.1:19090` | S3-compatible WORM/Object Lock emulation |
| MinIO Console | `http://127.0.0.1:19091` | Object store admin UI |
| Alert webhook | `http://127.0.0.1:19092` | Slack/PagerDuty-style webhook emulator |
| Billing API mock | `http://127.0.0.1:19093/usage` | Provider usage API emulator |
| Dashboard via nginx | `http://127.0.0.1:18080` | Dashboard behind basic auth (`casan` / `casan`) |
## Commands
```bash
bash .specify/scripts/bash/infra-lab.sh start
bash .specify/scripts/bash/infra-lab.sh verify
bash .specify/scripts/bash/infra-lab.sh env
bash .specify/scripts/bash/infra-lab.sh stop
```
This is a lab, not a compliance claim. AWS S3 Object Lock, real enterprise IdP,
CloudHSM, PagerDuty/Slack, and OpenAI/Anthropic billing APIs still need real
managed services and credentials before claiming production Strong readiness.