Che cosa sono i container?

I container sono pacchetti di software che contengono tutti gli elementi necessari per l'esecuzione in qualsiasi ambiente. In questo modo, i container virtualizzano il sistema operativo e sono eseguibili ovunque, da un data center privato al cloud pubblico o anche sul laptop di uno sviluppatore. Da Gmail a YouTube passando per Ricerca, tutti i prodotti e servizi Google vengono eseguiti in container. La containerizzazione consente ai nostri team di sviluppo di spostarsi velocemente, eseguire il deployment del software in modo efficiente e operare su una scala senza precedenti. Negli ultimi dieci anni abbiamo imparato molto sull'esecuzione dei carichi di lavoro containerizzati e abbiamo condiviso queste conoscenze con la community: dai primi contributi di cgroups al kernel di Linux alla pubblicazione open source delle progettazioni dei nostri strumenti interni come il progetto Kubernetes.

Definizione di container

I container sono pacchetti leggeri del codice dell'applicazione e di dipendenze come versioni specifiche di runtime e librerie dei linguaggi di programmazione necessari per eseguire i servizi software.

I container facilitano la condivisione di CPU, memoria, archiviazione e risorse di rete a livello di sistemi operativi e offrono un meccanismo di pacchettizzazione logico in cui le applicazioni possono essere astratte dall'ambiente in cui vengono effettivamente eseguite. 

Quali sono i vantaggi dei container?

 Separazione delle responsabilità

La containerizzazione consente una chiara separazione delle responsabilità, in quanto gli sviluppatori si concentrano sulla logica e sulle dipendenze dell'applicazione, mentre i team delle operazioni IT possono concentrarsi sul deployment e sulla gestione anziché sui dettagli relativi alle applicazioni, come le versioni e le configurazioni specifiche del software.

 Portabilità del carico di lavoro

I container sono in grado di funzionare praticamente ovunque, facilitando notevolmente lo sviluppo e il deployment: su sistemi operativi Linux, Windows e Mac, su macchine virtuali o server fisici, sulla macchina di uno sviluppatore o in data center on-premise e, ovviamente, nel cloud pubblico. 

 Isolamento delle applicazioni

I container virtualizzano le risorse di CPU, memoria, archiviazione e rete a livello di sistema operativo, offrendo agli sviluppatori una visualizzazione del sistema operativo logicamente isolata da altre applicazioni.

Risolvi le tue sfide aziendali con Google Cloud

I nuovi clienti ricevono 300 $ di crediti gratuiti da spendere su Google Cloud.
Iscriviti alle newsletter di Google Cloud per ricevere aggiornamenti sui prodotti, informazioni sugli eventi, offerte speciali e altro ancora.

Container e VM

Dovresti già avere una certa familiarità con le VM: un sistema operativo guest come Linux o Windows in esecuzione su un sistema operativo host e con accesso all'hardware sottostante. I container vengono spesso paragonati alle macchine virtuali (VM). Come le macchine virtuali, i container consentono di pacchettizzare le applicazioni insieme a librerie e altre dipendenze, garantendo ambienti isolati per l'esecuzione dei servizi software. Tuttavia, come vedrai, le somiglianze finiscono qui, in quanto i container sono unità molto più leggere e offrono una miriade di vantaggi agli sviluppatori e ai team delle operazioni IT.

  • I container sono molto più leggeri delle macchine virtuali
  • I container eseguono la virtualizzazione a livello del sistema operativo, mentre le macchine virtuali a livello di hardware
  • I container condividono il kernel del sistema operativo e utilizzano una frazione della memoria richiesta dalle VM

A che cosa servono i container?

I container mettono a disposizione un meccanismo di pacchettizzazione logico grazie al quale le applicazioni possono essere astratte dall'ambiente in cui sono effettivamente eseguite. Questo disaccoppiamento consente di eseguire facilmente e in modo coerente il deployment delle applicazioni basate su container, indipendentemente dal fatto che l'ambiente di destinazione sia un data center privato, il cloud pubblico o il laptop di uno sviluppatore.

 Sviluppo agile

I container consentono agli sviluppatori di lavorare molto più rapidamente evitando le preoccupazioni relative a dipendenze e ad ambienti.

 Operazioni efficienti

I container sono leggeri e consentono di utilizzare solo le risorse di calcolo necessarie, così puoi eseguire le applicazioni in modo più efficiente.

 Esecuzione ovunque ti trovi

I container possono essere eseguiti virtualmente ovunque. Ovunque tu voglia eseguire software, puoi utilizzare i container.

Fai il prossimo passo

Inizia a creare su Google Cloud con 300 $ di crediti gratuiti e oltre 20 prodotti Always Free.

Google Cloud
  • ‪English‬
  • ‪Deutsch‬
  • ‪Español‬
  • ‪Español (Latinoamérica)‬
  • ‪Français‬
  • ‪Indonesia‬
  • ‪Italiano‬
  • ‪Português (Brasil)‬
  • ‪简体中文‬
  • ‪繁體中文‬
  • ‪日本語‬
  • ‪한국어‬
Console
Google Cloud