[Guida] Dockerfile: come creare un'immagine Docker personalizzata
Ieri in questa mini-guida vi ho parlato di come installare Docker, la nota piattaforma open source per la gestione dei container Linux. Oggi proseguiamo sulla strada tracciata ampliando il discorso e introducendo i Dockerfile. Questi file testuali contengono la lista delle istruzioni utilizzate da Docker per la build.
Dockerfile: immagini custom per Docker
Questa tecnologia è diffusissima in ambito aziendale. Spesso, è preferita alla classica virtualizzazione perché offre il massimo della portabilità, della configurabilità e l’isolamento. Docker infatti, rende possibile distribuire facilmente e rapidamente un ambiente Linux. Nella mini-guida di oggi, vedremo proprio come creare un’immagine personalizzata, tra quelle disponibili nel repository ufficiale.
Nell’esempio, verrà utilizzata l’immagine di Alpine Linux, pesa solo 5MB. Poiché non contiene Vim di default, la nostra personalizzazione sarà proprio aggiungere l’editor testuale. Vediamo come.
- Recuperate l’immaginedi Alpine Linux da Docker Hub: docker pull alpine
- Create il Dockerfile: touch Dockerfile, e modificatelo aggiungendo queste istruzioni:
FROM alpine:latest RUN apk update RUN apk add vim
- Recatevinella directory nella quale avete creato il Dockerfile e create la vostra immagine personalizzata:
docker build -t alpine-vim . //alpine-vim è il nome custom, il punto è l'attuale directory
Per verificare quali immagini sono presenti sul nostro sistema, digitate nel terminale docker images. L’output sarà simile al seguente:
REPOSITORY TAG IMAGE ID CREATED SIZE alpine-vim latest fa8255cf0de0 5 seconds ago 33.9MB alpine latest a187dde48cd2 3 weeks ago 5.6MB
Avviando ora il container con:
docker container run -ti alpine-vim /bin/sh
possiamo verificare la corretta implementazione di Vim, controllandone la versione: vim –version.
Per approfondire la propria conoscenza sul funzionamento dei Dockerfile vi rimando alla relativa reference guide. Sempre sul sito ufficiale del progetto open source, è presente anche un utile pagina delle best practice.
Seguiteci sul nostro canale Telegram, sulla nostra pagina Facebook e su Google News. Nel campo qui sotto è possibile commentare e creare spunti di discussione inerenti le tematiche trattate sul blog.