Best practice per i container

Questa pagina fornisce informazioni sulle best practice per la creazione e l'esecuzione delle immagini container.

Creazione di container

L'approccio adottato per la creazione delle immagini container può influire sulla velocità delle build e dei deployment, oltre che sullo sforzo necessario per gestire le immagini.

Scopri le best practice per la creazione di container più facili da creare ed eseguire.

Puoi anche leggere le best practice di Docker per la creazione di immagini.

Utilizzo dei container

Scopri le best practice per l'utilizzo dei container. Queste pratiche includono suggerimenti per la sicurezza, il monitoraggio e il logging, che semplificano l'esecuzione delle applicazioni in Google Kubernetes Engine e nei container in generale.

Considerazioni sui registri pubblici

Considera attentamente i seguenti casi:

Utilizzo di immagini di fonti pubbliche

Quando utilizzi immagini da origini pubbliche come Docker Hub, introduci un codice che la tua organizzazione non controlla nella tua catena di fornitura software. Per mitigare i rischi, puoi:

  • Crea le tue immagini per controllare i contenuti delle immagini.
  • Utilizza un'immagine di base standardizzata e sviluppala sopra.
  • Analizza le immagini per individuare le vulnerabilità e risolvere quelle identificate.
  • Applica standard e criteri sulle immagini di cui esegui il deployment.

Scopri di più sulle considerazioni relative alle immagini pubbliche

Rendere pubblici i registry

Puoi rendere pubblico il registry nel tuo progetto Google Cloud concedendo l'accesso in lettura nel bucket di archiviazione del registry all'identità allUsers.

Se tutti i tuoi utenti hanno account Google Cloud, puoi limitare l'accesso agli utenti autenticati con l'identità allAuthenticatedUsers.

Prima di rendere pubblico un registro, prendi in considerazione le seguenti linee guida:

  • Verifica che tutte le immagini archiviate nel registro siano condivisibili pubblicamente e che non espongano credenziali, dati personali o dati riservati.
  • Ti viene addebitato il traffico di rete in uscita quando gli utenti eseguono il pull delle immagini. Se prevedi di ricevere molto traffico di download da internet, considera i costi associati.
  • Per impostazione predefinita, i progetti hanno una quota illimitata per utente. Per impedire utilizzi illeciti, limita la quota per utente all'interno del tuo progetto.

Rimozione delle immagini inutilizzate

Rimuovi le immagini container inutilizzate per ridurre i costi di archiviazione e mitigare i rischi derivanti dall'utilizzo di software meno recente. Sono disponibili vari strumenti per eseguire questa operazione, tra cui gcr-cleaner. Lo strumento gcr-cleaner non è un prodotto ufficiale di Google.

Valutazione della sicurezza dei container

Il Center for Internet Security (CIS) dispone di un Benchmark Docker per valutare la sicurezza di un container Docker.

Docker fornisce uno script open source denominato Docker Bench for Security. Puoi utilizzare lo script per convalidare un container Docker in esecuzione rispetto al benchmark CIS Docker.

Docker Bench For Security può aiutarti a verificare molti elementi nel benchmark Docker del CIS, ma non tutti gli elementi sono verificabili con lo script. Ad esempio, lo script non può verificare se l'host per il container è protetto o se l'immagine container include dati personali. Esamina tutti gli elementi del benchmark e identifica quelli che potrebbero richiedere una verifica aggiuntiva.

Protezione dei deployment

Scopri come creare una catena di fornitura del software sicura e come utilizzare l'analisi delle vulnerabilità e Autorizzazione binaria su Google Cloud per definire e applicare i criteri per il deployment.

Puoi anche guardare un video che descrive la sicurezza della catena di fornitura del software.