Creazione di un DockerFile
Esempio di creazione di un Dockerfile, le principali istruzioni
Esempio creare un dockerfile
Ecco i passi- Creare un cartella che contiene il tuo Dockerfile, che può essere posizionata in qualsiasi punto del tuo sistema locale.
- Creare un file , all'interno della cartella creata
nome file: Dockerfile,
A terminale: touch filedocker
-
Definire le istruzioni per costruire la tua immagine in un file di testo chiamato Dockerfile.
Dovranno essere scritte le istruzioni principali usate per questo componente
vedi esempio successivo
- Eseguire docker build Apri un terminale e naviga nella directory che contiene il tuo Dockerfile. Quindi, esegui il comando docker build seguito da un punto (.) o dal percorso del tuo Dockerfile. Esempio: docker build . (se il Dockerfile è nella directory corrente) docker build /path/to/your/directory (se il Dockerfile si trova in una directory specifica)
-
Docker esegue il build Docker leggerà il tuo Dockerfile e utilizzerà le istruzioni per creare l'immagine strato per strato.
Scaricherà le immagini di base necessarie e seguirà le istruzioni per configurare l'ambiente dell'immagine. -
Immagine creata Una volta completate tutte le istruzioni,
Docker avrà creato una nuova immagine basata sulle tue specifiche.
In particolare ultima riga fornisce id della immagine -
Container docker run --name nome_container id-immagine
Esempio: docker run --name container2 sha256:4a999c4ff3b98c76c4649f55149185ee4a9a85a0752e7 - Come risposta otterremo l'istruzione CMD scritta nel dockerfile
Esempio di istruzioni in un dockerfile
FROM alpine latest
CMD "echo"’ " Ciao Mondo "
Nome dockerfile
La convenzione per il nome di un Dockerfile è quella di utilizzare il nome dell'applicazione che l'immagine contiene, seguito da un `.Dockerfile`.- Un'applicazione chiamata "mio-app" potrebbe avere un Dockerfile chiamato `mio-app.Dockerfile`.
Regole aggiuntive
- Il nome del file deve essere composto solo da lettere minuscole, numeri e trattini.
- Non sono ammessi spazi o altri caratteri speciali.
- Il nome del file deve essere univoco all'interno della directory di lavoro corrente.