container image

È quel “pacchetto” di informazioni (o bundle) contenente tra le altre cose il filesystem dei container che utilizzerano l’immagine.

Il formato utilizzato da Docker è standardizzato e si chiama OCI filesystem è sudiviso in strati che contribuiscono parzialmente all’insieme di cartelle e file globalmente visibili. Ognuno di questi layer è indirizzabile e scaricabile separatamente dal registry e quindi è possibile creare immagini derivate che sono salvate in maniera efficiente perché condividono parte del loro filesystem con l’immagine di partenza, senza duplicazioni.

Le immagini in formato OCI contengono tutta una serie di altre informazioni, come ad esempio le porte di rete interessanti e i punti di montaggio per i volumi esterni.

Quando viene creata una immagine viene identificata da un nome e un tag che saranno utilizzati in fase di download o upload. Il formato è nome:tag dove a parte :tag è opzionale e in cui il nome può essere un URL o un path e in quest’ultimo caso potrà essere salvata esternamente sul registry di default che di solito è http://hub.docker.com . Il tag è una semplice stringa alfanumerica e latest è il default quando non viene specificato nei comandi.

Per generare le immagini, Docker mette a disposizione il comando docker build e il formato Dockerfile che sono rispettivamente il sistema di build (inteso nell’accezione di strumenti informatici) e la ricetta di costruzione dell’immagine, espressa in un formato apposito.