Docker · 6 min read · Nov 24, 2025
Docker Parte 4: costruire e pubblicare immagini docker personalizzate
Nella prima e nella seconda parte, abbiamo trattato i fondamenti dell’esecuzione di un contenitore preparando il nostro sistema per gestire i contenitori docker e cosa significa esattamente utilizzare un contenitore docker rispetto ad altre tecnologie di virtualizzazione da una prospettiva tecnica. Poi, nella terza parte, siamo passati alla pratica con le immagini docker, abbiamo imparato le basi e creato il nostro primo contenitore Notepad utilizzando WordPress o DokuWiki.
In questa quarta parte, vedremo come vengono costruite le immagini docker e creeremo la nostra immagine personalizzata pronta per essere scaricata e condivisa con i nostri amici, colleghi e comunità.
Per questo tutorial, utilizzeremo l’immagine Whale Docker. La Whale è la mascotte ufficiale di Docker e l’immagine Whale docker assomiglia al programma cowsay che genera immagini ASCII di una mucca nel terminale con un messaggio. Può anche generare immagini utilizzando immagini pre-fatte di altri animali, come Tux il Pinguino e la mascotte di Linux.
Introduzione ai Docker Files
Nella parte precedente, ci siamo presentati al Docker Hub e abbiamo appreso che è una risorsa centralizzata basata su cloud per la scoperta delle immagini dei contenitori, la costruzione delle immagini e la distribuzione di tali immagini. Abbiamo anche appreso che un’immagine docker è un’immagine multi-layer sopra un’immagine base. Detto ciò, utilizzare un’immagine base elimina il fastidio di creare da zero un sistema operativo adatto per l’immagine docker e ci offre l’opzione di personalizzare i livelli superiori in cui risiederà il nostro software.
Per creare un’immagine personalizzata utilizzando un’immagine base, dobbiamo fornire al motore docker istruzioni su come installare e configurare pacchetti e file e anche alcune impostazioni che vanno con esso. Queste istruzioni sono scritte in un file di testo semplice chiamato “dockerfile”. I Dockerfile sono come ricette che si consegnano a uno chef e lui/lei ti cucina un ottimo pasto. Questi file docker sono scritti utilizzando un insieme semplice e descrittivo di passaggi che vengono chiamati “istruzioni”. Ogni istruzione crea un nuovo livello nella nostra immagine. Le istruzioni includono azioni come eseguire un comando, aggiungere un file o una directory, quale processo eseguire quando si avvia un contenitore dall’immagine, ecc. Questo processo è proprio come impostare una serie di comandi in uno script shell. Una volta che richiedi la costruzione di un’immagine, Docker legge il dockerfile esegue le istruzioni e restituisce un’immagine finale.
Costruire un’immagine Docker
Ci sono due modi per costruire la tua immagine Docker personalizzata. Puoi costruirla sul tuo computer oppure puoi utilizzare il Docker Hub di cui abbiamo parlato in precedenza. In questa parte, impareremo come costruire la nostra immagine Docker localmente e poi pubblicarla sul Docker Hub Registry.
Costruire Localmente utilizzando un Dockerfile
Creeremo un’immagine Docker personalizzata utilizzando l’immagine “Whale say” che è una piccola immagine Docker (basata su un’immagine Ubuntu) che quando la esegui, dice qualcosa che hai programmato per dirti.
Per prima cosa, apri un terminale e crea una nuova cartella digitando:
mkdir mywhaleQuesta directory funge da “contesto” per la tua costruzione. Il contesto significa solo che contiene tutte le cose di cui hai bisogno per costruire con successo la tua immagine.
Entra nella tua nuova cartella con:
cd mywhalee crea un Dockerfile nella cartella digitando:
touch DockerfileOra dovresti vedere il Dockerfile vuoto che abbiamo creato se dai il comando ‘ll’:
ll$ ll
total 8.0K
-rw-rw-r-- 1 user user 0 23:26 DockerfileAprilo con il tuo editor di testo preferito e aggiungi:
FROM docker/whalesay:latestQuesta prima riga di istruzione, con la parola chiave FROM, dice a Docker su quale immagine si basa la tua immagine. Stai basando il tuo nuovo lavoro sull’immagine whalesay esistente.
La prossima istruzione che aggiungeremo darà la possibilità alla nostra balena di dire una profezia. Per realizzare questo compito, utilizzeremo il pacchetto fortune che è disponibile nei repository di Ubuntu (ricorda che l’immagine della balena è basata su un’immagine Ubuntu). Il programma fortunes ha un comando che stampa saggi detti che la nostra balena può dire.
Quindi, il primo passo è installarlo. Per fare ciò, aggiungiamo la solita istruzione di installazione apt:
RUN apt -y update && apt -y install fortunesUna volta che l’immagine ha il software di cui ha bisogno, istruisci il software su cosa eseguire quando l’immagine viene caricata. Per fare ciò, aggiungiamo la seguente istruzione:
CMD /usr/games/fortune -a | cowsayLa riga sopra dice al programma fortune di inviare una citazione scelta casualmente al programma cowsay.
E abbiamo finito! Ora salva il file e esci.
Puoi verificare ciò che hai fatto eseguendo “cat Dockerfile” in modo che il tuo Dockerfile appaia così:
cat DockerfileFROM docker/whalesay:latest
RUN apt-get -y update && apt-get install -y fortunes
CMD /usr/games/fortune -a | cowsayOra che tutto (si spera) sembra buono, è tempo di costruire la nostra immagine Docker (non dimenticare il punto . alla fine del comando):
docker build -t my-docker-whale .Il comando sopra prende il Dockerfile nella cartella corrente e costruisce un’immagine chiamata “my-docker-whale” sul tuo computer locale.
Puoi verificare che la tua immagine Docker sia effettivamente memorizzata sul tuo computer con:
docker imagesPoi puoi eseguire la tua immagine Docker digitando quanto segue:
docker run my-docker-whaleUna volta eseguita, otterrai qualcosa di simile all’immagine seguente

Pubblicare la tua immagine Docker personalizzata su Docker Hub
La tua prossima opzione è pubblicare l’immagine Docker creata nel repository Docker Hub. Per farlo, dovrai creare un account sulla pagina di registrazione di Docker Hub dove fornirai un nome, una password e un indirizzo email per il tuo account. Dovrei anche sottolineare che il servizio Docker Hub è gratuito per le immagini docker pubbliche. Una volta creato il tuo account, puoi caricare l’immagine che hai precedentemente creato, per renderla disponibile per altri.
Per farlo, avrai bisogno dell’ID e del TAG della tua immagine “my-docker-whale”.
Esegui di nuovo il comando “docker images” e annota l’ID e il TAG della tua immagine Docker, ad esempio a69f3f5e1a31.
Ora, con il seguente comando, prepareremo la nostra immagine Docker per il suo viaggio nel mondo esterno (la parte del comando relativa al nome dell’account è il tuo nome account sulla pagina del profilo Docker Hub):
docker tag a69f3f5e1a31 accountname/my-docker-whale:latestEsegui il comando “docker images” e verifica la tua immagine appena contrassegnata.
Successivamente, utilizza il comando “docker login” per accedere a Docker Hub dalla riga di comando.
Il formato per il comando di accesso è:
docker login --username=yourhubusername [email protected]Quando richiesto, inserisci la tua password e premi invio.
Ora puoi caricare la tua immagine nel repository appena creato:
docker push accountname/my-docker-whaleIl comando sopra può richiedere del tempo per completarsi a seconda della larghezza di banda di upload della tua connessione mentre carica qualcosa come 180MB di dati (nel nostro esempio). Una volta completato, puoi andare al tuo profilo su Docker Hub e controllare la tua nuova immagine.
Scaricare la tua immagine personalizzata
Se desideri scaricare la tua immagine dal tuo repository Docker Hub, dovrai prima eliminare l’immagine originale dal tuo computer locale perché Docker rifiuterebbe di scaricare dal hub poiché le immagini locali e remote sono identiche.
Come ricordi dalla parte precedente, per rimuovere un’immagine docker, devi eseguire il comando “docker rmi”. Puoi utilizzare un ID o il nome per rimuovere un’immagine:
docker rmi -f a69f3f5e1a31Ora che l’immagine è stata eliminata, puoi scaricare e caricare l’immagine dal tuo repository utilizzando il comando “docker run” includendo il tuo nome account da Docker Hub.
docker run accountname/my-docker-whalePoiché abbiamo precedentemente eliminato l’immagine e non era più disponibile sul nostro sistema locale, Docker la scaricherà e la memorizzerà nella posizione designata.
Riepilogo
In questa parte, abbiamo imparato come creare un file Docker, scrivere alcune istruzioni di base e costruire un’immagine utilizzandolo come ricetta. Abbiamo anche trattato le basi del caricamento della nostra nuova immagine personalizzata nel registro Docker Hub e del download sul nostro computer locale. Nella prossima parte di questa serie di tutorial Docker, mostrerò come possiamo automatizzare la procedura di costruzione dell’immagine in modo da poter creare istantaneamente immagini personalizzate ogni volta che ne abbiamo bisogno! Rimanete sintonizzati.
Ricevi i nuovi post nella tua casella di posta.
Nessuno spam. Disiscriviti in qualsiasi momento.