In questo modulo, creerai l'immagine del container per la tua applicazione monolitica node.js e la invierai ad Amazon Elastic Container Registry. Inizia a creare
I container permettono di creare facilmente un pacchetto con il codice, la configurazione e le dipendenze di un'applicazione, da utilizzare come servizio di base per ottenere ambiente uniforme, efficienza operativa, produttività di sviluppo e controllo di versione. I container consentono di distribuire applicazioni in modo rapido, affidabile e uniforme indipendentemente dall'ambiente di distribuzione.
Velocità
L'avvio di un container con una nuova versione di codice può essere eseguito senza un sovraccarico di implementazione significativo. La velocità operativa migliora, perché il codice creato in un container sulla macchina locale dello sviluppatore può essere facilmente spostato su un server di test semplicemente spostando il container. Al momento della creazione, questo container può essere collegato ad altri container necessari per eseguire lo stack dell'applicazione.
Controllo delle dipendenze e pipeline migliorata
Un'immagine di container Docker è un'acquisizione point-in-time del codice e delle dipendenze di un'applicazione. Ciò consente a un'organizzazione tecnologizzata di creare una pipeline standard per il ciclo di vita delle applicazioni. Ad esempio:
- gli sviluppatori creano ed eseguono il container in locale.
- L'integrazione continua del server esegue lo stesso container ed esegue i test di integrazione per accertarsi che soddisfi le aspettative.
- Lo stesso container è spedito a un ambiente di gestione temporanea in cui il runtime behavior può essere controllato con i test di carico o QA manuale.
- Lo stesso container è spedito alla produzione.
La possibilità di creare, testare, spedire ed eseguire lo stesso container attraverso tutte le fasi di integrazione e pipeline di implementazione semplifica notevolmente la distribuzione di applicazioni affidabili di alta qualità.
Densità ed efficienza delle risorse
I container incrementano l'efficienza delle risorse consentendo l'esecuzione su un singolo sistema di più processi eterogenei. L'efficienza delle risorse è un naturale risultato delle tecniche di isolamento e allocazione che i container utilizzano. Ai container può essere imposto un limite di consumo di determinate quantità di CPU e memoria di un host. Grazie alla comprensione delle risorse necessarie di un container e di quelle disponibili dal server host sottostante, è possibile ridimensionare correttamente le risorse di calcolo da utilizzare con host di dimensioni ridotte o di aumentare la densità dei processi in esecuzione su un singolo host di grandi dimensioni, incrementando la disponibilità e ottimizzando l'utilizzo delle risorse.
Flessibilità
La flessibilità dei container Docker si basa sulla loro portabilità, semplicità di implementazione e le piccole dimensioni. In contrasto con l'installazione e la configurazione richieste in una macchina virtuale, i servizi per la creazione di pacchetti all'interno dei container permettono di spostarli facilmente tra gli host, isolarli dai guasti di altri servizi adiacenti e proteggerli da patch erranti o da aggiornamenti software del sistema host.