Files
laboratori-cloud/.planning/PROJECT.md
Luca Sacchi Ricciardi 8d34c6152a docs: initialize project
2026-03-24 19:13:13 +01:00

71 lines
3.7 KiB
Markdown

# Laboratori Cloud - Corso Soluzioni Cloud
## What This Is
Un corso pratico di 5 laboratori per imparare le tecnologie Cloud attraverso simulazioni locali con Docker. Ogni lab simula servizi cloud core (IAM, Network, Compute, Storage, Database) usando container e reti isolate, con paralleli diretti a servizi AWS/Azure/GCP.
Il materiale segue il framework Diátaxis: ogni lab include Tutorial (guida passo-passo), How-to Guides, Reference (specifiche tecniche), e Explanation (raccordo concettuale cloud-locale).
## Core Value
**Gli studenti imparano i concetti cloud praticamente in locale, senza costi o complessità di account cloud reali.**
Se tutto il resto fallisce, questo deve funzionare: ogni lab è eseguibile localmente, testabile, e documenta chiaramente il parallelismo tra l'infrastruttura Docker e il servizio cloud corrispondente.
## Requirements
### Validated
(None yet — ship to validate)
### Active
- [ ] **Lab 1 - IAM & Sicurezza**: Utenti Linux, gruppi, chiavi SSH, permessi Docker socket
- [ ] **Lab 2 - Network**: Docker Networks (bridge), iptables per NAT, isolamento VPC
- [ ] **Lab 3 - Compute**: Docker container con limiti CPU/memoria, web server (Nginx/Node.js)
- [ ] **Lab 4 - Storage**: Docker Volumes (Block) e MinIO (Object Storage compatibile S3)
- [ ] **Lab 5 - Database**: PostgreSQL/MySQL in VPC privata con volume persistente
- [ ] **Framework Diátaxis**: 4 documenti per ogni lab (Tutorial, How-to, Reference, Explanation)
- [ ] **Infrastructure TDD**: Script di test per ogni lab prima dell'implementazione
- [ ] **Git Workflow**: Branches `lab-XX-nome` con Conventional Commits
### Out of Scope
- **Account cloud reali** — Il corso simula in locale, non usa API AWS/Azure/GCP
- **Mobile apps** — Focus esclusivo su infrastruttura e container Linux
- **Video streaming/storage** — Complessità eccessiva per v1
- **Real-time collaboration** — Laboratori individuali, non multi-user
## Context
**Target audience**: Studenti che hanno già visto superficialmente Azure (conoscono concetti base come VPC, VM, Storage) ma hanno poca esperienza pratica.
**Metodologia didattica**:
- **Learning by doing**: Ogni concetto cloud è prima spiegato, poi implementato in locale, poi verificato con test
- **Parallelismo esplicito**: Ogni componente Docker è mappato al servizio cloud corrispondente (es. MinIO → S3)
- **Incrementale**: I laboratori costruiscono progressivamente un'architettura complessa
**Esperienza esistente**: PRD e CLAUDE.md già definiti con principi chiari (Spec-Driven, TDD, Safety first, Little often, Double check)
## Constraints
- **Tech stack**: Docker Engine >= 24.0, Docker Compose V2, utility di rete standard (netcat, curl, iproute2)
- **Formato documentazione**: Framework Diátaxis obbligatorio per ogni lab
- **Git workflow**: Conventional Commits (`feat:`, `test:`, `docs:`), branches isolati per lab
- **Principi sicurezza**: Nessun container come root, reti private non esposte sull'host, limiti risorse obbligatori
- **Lingua**: Italiano per tutto il materiale didattico
## Key Decisions
| Decision | Rationale | Outcome |
|----------|-----------|---------|
| Docker per simulazione | Standard mercato, isolamento nativo, setup riproducibile | — Pending |
| MinIO per Object Storage | Compatibilità 100% API S3, leggero per locale | — Pending |
| PostgreSQL per Database | Standard open-source, simula RDS/Aurora | — Pending |
| Bridge networks isolate | Simulano VPC/Subnets, permettono test isolamento | — Pending |
| TDD per infrastruttura | Garantisce che requisiti di sicurezza siano verificati | — Pending |
| Framework Diátaxis | Copre tutti gli stili di apprendimento (tutorial, reference, explanation) | — Pending |
---
*Last updated: 2026-03-24 after initialization*