Contenitori interattivi
Esempio:
docker run -ti alpine:3.7
Il comando di default qui è /bin/sh
.
Come risultato siamo dentro il sistema operativo Alpine.
Tutti i comandi che diamo sono quelli di Alpine.
Uscita temporanea:
Ctrl-P Ctrl-Q
Torna il pronto dello host Linux
Ispezione dei contenitori attivi:
docker ps
Notare lo id (hash) e il nome di fantasia assegnato d’ufficio al contenitore
Ritorno nel contenitore:
docker attach ID
oppure
docker attach nome
Uscita finale, da Alpine:
exit
Torna il pronto dello host linux. Il contenitore è terminato.
Lista contenitori attivi:
docker ps
Lista di tutti i contenitori, anche terminati
docker ps -a
I contenitori terminati vanno rimossi:
docker rm ID
oppure
docker rm nome
Eventuale rimozione di tutti i contenitori:
docker rm -f $(docker ps -aq)
Attenzione : si possono perdere dei dati importanti
Alpine Linux
La release Linux di riferimento per Docker è Ubuntu. Questa è anche l’immagine di base su cui molte immagini di applicativi sono costruite. Ma: richiede molti MB di disco.
Un’alternativa recente per lo sviluppo immagini di applicativi è Alpine Linux
- Molto ridotto nel footprint
- Richiede pochissimi MB di disco
Attenzioni:
- Alpine ha comandi di amministrazione diversi
- I comandi di base sono ottenuti con busybox
- L’ambiente runtime è MUSL e non GLIBC
Questo necessita di attenzioni quando si sviluppano eseguibili compilati dai contenitori