Cos'è il volume nell'immagine Docker?

Cos'è il volume nell'immagine Docker?

Un'immagine Docker è un modello che include istruzioni per la creazione di contenitori docker. Le immagini Docker sono costruite da Dockerfile. Dockerfile definisce l'immagine di base da utilizzare e le dipendenze da installare. Un'immagine può essere creata o creata utilizzando Dockerfile dopo che è stata creata.

Questo articolo spiegherà il volume nell'immagine Docker.

Cos'è il volume nell'immagine Docker?

In Docker, un volume è un modo per persistere ai dati generati e utilizzati dai contenitori Docker. Il volume può essere dichiarato in un file Docker o in fase di esecuzione. Quando l'utente dichiara il volume in Dockerfile usando il “VOLUME"Istruzioni, verrà creato un nuovo volume ogni volta che un contenitore viene avviato dall'immagine, anche senza specificare il"-v"Opzione durante l'esecuzione del contenitore. Per dichiarare il volume in runtime, il "-vL'opzione "viene utilizzata con"Docker Run"Comando per montare una directory host in una directory di container.

Come montare il volume nell'immagine Docker?

Per montare il volume in un'immagine Docker, in primo luogo, crea un Dockerfile e dichiara il volume in esso usando "VOLUME" Istruzioni. Quindi, crea/crea un'immagine Docker dal Dockerfile desiderato. Infine, esegui l'immagine Docker come contenitore Docker.

Step1: Crea Dockerfile

Innanzitutto, crea un nuovo file chiamato "Dockerfile"E incolla il seguente codice in esso:

Da nginx: ultimo
Eseguire eco "

Benvenuti nell'applicazione Linuxhint

">/usr/share/nginx/html/indice.html
Volume/usr/share/nginx/html

Nel codice sopra:

  • "DA"L'istruzione viene utilizzata per specificare un'immagine di base per il contenitore. Nel nostro caso, è "Nginx: ultimo".
  • "CORRERE"L'istruzione viene utilizzata per eseguire un comando durante il processo di build/creazione dell'immagine Docker.
  • "eco"L'utilità emetterà la stringa"

    Benvenuti nell'applicazione Linuxhint

    "All'output standard e">"L'operatore viene utilizzato per reindirizzare questo output in un file situato a"/usr/share/nginx/html/indice.html".
  • "VOLUME"L'istruzione crea un nuovo volume Docker a"/usr/share/nginx/html".

Questo Dockerfile crea una nuova immagine Docker basata sull'immagine NGINX. Dockerfile esegue quindi un comando per creare un nuovo file su “/usr/share/nginx/html/indice.HTML "che contiene il codice HTML per il messaggio" Welcome to LinuxHint ". Infine, l'istruzione "Volume" crea un nuovo volume Docker su "/USR/Share/NGINX/HTML".

Passaggio 2: crea l'immagine Docker

Quindi, crea un'immagine Docker dal Dockerfile desiderato utilizzando il comando fornito:

Docker build -t New -IMG .

Qui, il "-T"L'opzione viene utilizzata per specificare il nome dell'immagine. Ad esempio, abbiamo specificato il "New-IMG"Come nome per l'immagine Docker:

Passaggio 3: build Docker Container

Quindi, crea ed esegui il contenitore Docker usando l'immagine Docker attraverso il seguente comando:

Docker Run-NAME NEW-CONT1 -P 80:80 New-IMG

Qui:

  • "-nome"Viene utilizzato per specificare il nome del contenitore.
  • "New-Cont1"È il nome del contenitore.
  • "-P"Viene utilizzato per assegnare la porta al contenitore, i.e., "80:80".
  • "New-IMG"È l'immagine Docker:

Passaggio 4: verifica

Infine, apri il browser desiderato, reindirizza alla porta assegnata e visualizza l'applicazione distribuita:

Come puoi vedere usando il "VOLUME"Istruzioni, la directory locale contenente file HTML è stata montata su"/usr/share/nginx/html "e la pagina di destinazione NGINX predefinita è stata sostituita con il nostro contenuto personalizzato.

Conclusione

In Docker, un volume è un modo o un metodo per persistere ai dati generati e utilizzati dai contenitori Docker. Il volume può essere dichiarato in un file Docker specificando il "VOLUME"Istruzioni o in runtime usando il"-vOpzione "con la"Docker Run"Comando. Per montare il volume in un'immagine Docker, in primo luogo, crea un fikerfile e dichiara il volume in esso usando le istruzioni "volume". Quindi, crea un'immagine da Dockerfile. Infine, esegui l'immagine Docker come contenitore. Questo articolo ha spiegato sul volume nell'immagine Docker.