Comprensione dei volumi Docker

Comprensione dei volumi Docker
Docker è uno degli ultimi strumenti di containerizzazione spesso utilizzati per sviluppare e distribuire software, progetti e programmi semplici. Ha introdotto il concetto di contenitori. I contenitori vincolano il progetto Docker e le sue dipendenze essenziali in un'unità o un pacchetto. Tuttavia, questi contenitori sono supportati e gestiti da diversi componenti Docker e i volumi sono uno di questi.

Questo articolo fornirà le basi del volume Docker.

Cos'è il volume Docker?

Il volume Docker viene definito un file system esterno per i contenitori. I dati creati dai contenitori Docker sono conservati utilizzando il volume Docker. Viene inoltre definito un sistema di backup del contenitore in quanto indipendente dal ciclo di vita del contenitore e gestito dall'host. Inoltre, gli utenti possono montare il volume sul contenitore quando il contenitore viene creato e avviato.

Come montare il volume in docker?

Diversi metodi di montaggio Il volume con contenitori sono disponibili in Docker. Per aiutare con questo, abbiamo elencato alcuni modi per montare/vincolare il volume con contenitori Docker:

  • Metodo 1: montare il volume durante la creazione e l'avvio del contenitore
  • Metodo 2: creare e montare il volume
  • Metodo 3: Volume di montaggio in Dockerfile
  • Metodo 4: Volume di montaggio in Docker Compose

Metodo 1: montare il volume durante la creazione e l'avvio del contenitore

Per montare il volume durante la creazione e l'avvio dei contenitori, è possibile utilizzare "-montare" O "-vOpzione "insieme a" il Docker Run"Comando. A tale scopo, segui le seguenti istruzioni.

Passaggio 1: creare un semplice file html

Innanzitutto, crea un semplice file HTML "indice.html", Nella directory che si desidera montare con il contenitore Docker e incollare lo snippet di seguito nel file:






Ciao! Benvenuti in LinuxHint Tutorial



Passaggio 2: montare il volume durante la creazione e l'avvio del contenitore

Quindi, crea ed esegui il contenitore Docker con l'aiuto del comando fornito:

> Docker run -d --Name HTML -Container -p 8080: 80 -V C:/Users/Dell/Documents/Docker/Html:/USR/Share/Nginx/HTML NGINX

Nel comando sopra:

  • "-D"L'opzione viene utilizzata per eseguire il contenitore in modalità distaccata/sfondo.
  • "-nome"Definisce il nome del contenitore.
  • "-P"Specifica la porta di esposizione per il contenitore.
  • "-v"Viene utilizzato per montare il volume. Qui, abbiamo montato la directory locale "C:/Users/Dell/Documents/Docker/HTML"Come fonte con il"/usr/share/nginx/html"Percorso del contenitore.
  • "nginx"È un'immagine ufficiale del docker estratta dal registro:

Dopo aver avviato il contenitore, vai alla porta esportato dell'host locale. Ad esempio, abbiamo navigato al "Localhost: 8080".

Si può vedere che abbiamo eseguito con successo il "indice.html"File che viene posizionato sul percorso montato:

Metodo 2: creare e montare il volume

Per creare un volume Docker e quindi montare con il contenitore Docker, utilizzare il “Volume Docker Crea"Comando. Per le linee guida adeguate, le istruzioni di seguito sono abbastanza efficaci.

Passaggio 1: creare volume Docker

Crea un nuovo volume Docker o un file system esterno per montarlo con il contenitore utilizzando il comando fornito. Qui, "-nome"Viene utilizzato per nominare il volume:

> Volume Docker Create --Name Demo-Html

Passaggio 2: ispezionare il volume

Successivamente, ispezionare il volume per visualizzare il suo punto di montaggio e altri dettagli essenziali. A tale scopo, utilizzare il "Ispezione del volume Docker"Comando:

> Docker Volume Ispeziona Demo-HTML

Passaggio 3: montare il volume in contenitore

Quindi, montare il volume durante la creazione e l'esecuzione del contenitore attraverso il comando fornito. Nel comando dato, "-v" specificare la ":"Per montare il volume appena creato:

> Docker run -d --Name HTML1 -CONTAINER -P 5000: 5000 -V Demo -Html:/USR/Share/NGINX/HTML NGINX

In alternativa, puoi usare "-montare"Opzione insieme a"fonte" E "bersaglio"Variabili. La seguente sintassi verrà utilizzata per montare un volume con l'opzione "-mount":

> Docker run -d --name --Mount Source =,Target =

Qui, il "fonte"Sta specificando il nome del volume e il"bersaglio"È il percorso di destinazione in cui il volume verrà montato con il contenitore:

> Docker run -d --Name HTML2-CONTAINER-MOUNT Source = Demo-Html, Target =/Usr/Share/Nginx/HTML NGINX

Metodo 3: Volume di montaggio in Dockerfile

Un altro modo per montare il volume del docker è attraverso "Dockerfile". Dockerfile è un componente chiave di Docker ed è un file di istruzioni. Gli utenti possono montare il volume usando il "VOLUME"Comando in Dockerfile.

Dai un'occhiata alla procedura data per le linee guida adeguate.

Passaggio 1: crea Dockerfile

Crea un fikerfile e incolla le istruzioni di seguito nel file:

Da nginx: ultimo
Eseguire eco "

Benvenuti nell'applicazione Linuxhint

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

Qui:

  • "DA"Viene utilizzato per allocare l'immagine di base.
  • "CORRERE"Il comando crea il nuovo.file html nel "/usr/share/nginx/html/"Directory.
  • "VOLUME"Monta il"/usr/share/nginx/html"Directory al contenitore:

Passaggio 2: fare l'immagine

Successivamente, genera la nuova immagine Docker usando il comando menzionato. Nel comando indicato, il "-T"L'opzione definisce il tag o il nome dell'immagine:

> Docker build -t demo html .

Metodo 4: Volume di montaggio in Docker Compose

La composa Docker è un altro componente essenziale dell'ambiente Docker. È principalmente utilizzato per gestire ed eseguire applicazioni multi-container. Tuttavia, il volume di Docker può anche legarsi al contenitore compose attraverso "volumi" chiave.

Per montare un volume in un file di composizione, controlla i passaggi dati.

Passaggio 1: creare un "docker-compone.File YML "

Incolla le istruzioni sotto codifica nel "docker-compose.YML" file:

Versione: "3"
Servizi:
ragnatela:
Immagine: nginx: ultimo
Porte:
- 8080: 80
Volumi:
- C:/Users/Dell/Documents/Docker/HTML:/USR/Share/NGINX/HTML

La descrizione del "docker-compose.YML"Il file è il seguente:

  • Abbiamo configurato il “ragnatela"Servizio sotto il"Servizi" chiave.
  • Il servizio "Web" utilizza il "Nginx: ultimo"Immagine come immagine di base.
  • Il servizio "Web" espone sul "8080"Porta.
  • "volumi"La chiave viene utilizzata per montare il volume con il"ragnatela" servizio. Questa chiave passa "Percorso del volume di origine: destinazione target":

Passaggio 2: creare e avviare contenitore

Successivamente, containerizzare il “ragnatela"Servizio e avvia il contenitore con l'aiuto di"Docker-Opse Up"Comando:

> docker -compose up -d

Successivamente, visitare il porto specificato di localhost per il "ragnatela"Servizio e verifica se il servizio viene avviato e il volume specificato è montato o meno:

Dall'output sopra, puoi vedere che abbiamo montato correttamente il volume nel file di compose.

Conclusione

Il volume Docker viene definito un file system esterno per i contenitori. I dati prodotti dai contenitori Docker sono conservati e gestiti utilizzando il volume Docker. Il volume può essere montato con un contenitore in modi diversi, come il volume di montaggio usando "-montare" O "-vOpzione "con la"Docker Run"Comando o usa il"VOLUME"Comando in Dockerfile o configurazione del"volumiKey in "docker-compose.YML" file. Questo blog ha dimostrato una comprensione di base del volume Docker.