Containers
- Unità isolate che racchiudono un’applicazione e tutte le sue dipendenze, garantendo che essa funzioni in modo coerente su ambienti diversi.
- Si basano sulla virtualizzazione a livello di sistema operativo, utilizzando meno risorse rispetto alle VM.
- Vantaggi:
- Portabilità.
- Velocità di avvio.
- Isolamento e sicurezza.
- Svantaggi:
- Gestione complessa di ambienti multi-container senza strumenti di orchestrazione.
- Necessità di orchestratori per il bilanciamento, scalabilità e resilienza.
Automated Deployment | Container Orchestration

Automated Deployment
- Automatizza il processo di rilascio e aggiornamento del software.
- Strumenti: Jenkins, GitLab CI/CD, GitHub Actions.
- Vantaggi:
- Rilascio rapido e continuo.
- Riduzione degli errori umani.
- Svantaggi:
- Gestione limitata di ambienti complessi.
- Mancanza di funzionalità native per la scalabilità e il bilanciamento del carico.
Container Orchestration
- Coordina l'esecuzione di più container in ambienti distribuiti.
- Gestisce scalabilità, bilanciamento del carico, resilienza e comunicazione tra i container.
- Strumenti: Kubernetes, Docker Swarm.
- Vantaggi:
- Automazione completa per grandi cluster di container.
- Supporto per l'autoscaling e l'auto-riparazione.