GNU/Linux >> Linux Esercitazione >  >> Cent OS

Come distribuire e gestire MongoDB con Docker

Introduzione

MongoDB è una pratica soluzione di database NoSQL. Non utilizza una struttura dati fissa, il che lo rende scalabile e ideale per la gestione di carichi di lavoro dinamici. MongoDB è adatto per ambienti distribuiti, come i container Docker.

L'utilizzo di Docker e di un'immagine del contenitore MongoDB ufficiale può ridurre e semplificare notevolmente il processo di distribuzione del database.

Questo tutorial ti mostrerà come distribuire un'istanza MongoDB su un container Docker .

Prerequisiti

  • Un utente con sudo privilegi
  • Accesso a una riga di comando
  • Un'istanza Docker in esecuzione

Scarica l'immagine MongoDB per Docker

Segui le istruzioni dettagliate di seguito per scaricare l'ultima immagine MongoDB ufficiale per Docker.

  1. Il tuo servizio Docker deve essere attivo e funzionante. Puoi controllare rapidamente lo stato attuale inserendo il seguente comando nel tuo terminale:
sudo service docker status

In questo esempio, il servizio Docker è attivo e in esecuzione.

  1. Procedi con il download dell'ultima immagine Docker ufficiale per il database MongoDB:
sudo docker pull mongo

L'immagine indica che il sistema ha utilizzato l'latest tag per impostazione predefinita.

Per scaricare una versione specifica di MongoDB, utilizzare lo stesso comando aggiunto con il tag di versione. Ad esempio:

sudo docker pull mongo:4.2.2
  1. Elenca le immagini nel tuo repository Docker con il seguente comando:
sudo docker images

L'interfaccia conferma che l'immagine MongoDB è ora disponibile.

Distribuisci il contenitore MongoDB

Per impostazione predefinita, MongoDB archivia i dati in /data/db directory all'interno del contenitore Docker. Per rimediare, montare una directory dal sistema host sottostante al contenitore che esegue il database MongoDB. In questo modo, i dati vengono archiviati sul tuo sistema host e non verranno cancellati se un'istanza del contenitore si guasta.

  1. Crea un /mongodata directory sul sistema host:
sudo mkdir -p /mongodata
  1. Avvia il container Docker con run comando utilizzando l'immagine mongo. Il /data/db directory nel contenitore è montata come /mongodata sull'ospite. Inoltre, questo comando cambia il nome del contenitore in mongodb :
sudo docker run -it -v mongodata:/data/db --name mongodb -d mongo

-it – Fornisce una shell interattiva al contenitore Docker.

-v – Utilizzare questa opzione per allegare i /mongodata volume host su /data/db volume del contenitore.

-d – Avvia il contenitore come processo in background.

--name – Nome del contenitore.

  1. Una volta che il server MongoDB inizia a funzionare in un container, controlla lo stato digitando:
sudo docker ps

Il numero di porta predefinito è 27017, come si può vedere nell'output.

  1. Opzionalmente puoi specificare esplicitamente la porta MongoDB:
sudo docker run -it -v mongodata:/data/db -p 27017:27017 --name mongodb -d mongo
  1. Controlla sempre il registro Docker per vedere la catena di eventi dopo aver apportato modifiche:
sudo docker logs mongodb

I registri forniscono una vasta gamma di informazioni utili.

Avvia Interactive Docker Terminal (Bash Shell) per gestire il database MongoDB

  1. Il container è attualmente in esecuzione in modalità scollegata . Collegarsi al container utilizzando invece il terminale interattivo:
sudo docker exec -it mongodb bash
  1. Avvia la shell MongoDB digitando mongo nel terminale interattivo.

La shell MongoDB si avvia e il prompt è pronto per accettare i tuoi comandi.

  1. Invece di digitare semplicemente mongo , puoi inoltre definire un host e una porta specifici digitando:
mongo -host localhost -port 27017  

Con la shell MongoDB, ora puoi creare un database, aggiungere raccolte o gestire singoli documenti.

Come uscire da MongoDB e Interactive Shell

Digita exit per uscire dalla shell MongoDB e quindi exit ancora una volta per lasciare la shell interattiva.

In alternativa, puoi digitare quit() oppure usa Ctrl-C per uscire dalla shell.

Arresto e riavvio del database MongoDB

Il docker stop command è un comando breve e chiaro che interrompe l'esecuzione delle istanze del contenitore:

sudo docker stop mongodb

Esamina l'elenco dei contenitori Docker in esecuzione digitando:

sudo docker ps

I contenitori vengono avviati utilizzando docker start comando:

sudo docker start mongodb

L'elenco dei contenitori in esecuzione ora conferma che il database MongoDB è stato avviato nuovamente:

sudo docker ps

Cent OS
  1. Come distribuire un server DNS dinamico con Docker su Debian 10

  2. Come distribuire microservizi con Docker

  3. Come distribuire app con Rancher

  4. Come distribuire un container nginx con Docker su Linode

  5. Come installare Docker e distribuire uno stack LAMP

Come distribuire Pi-Hole su Debian 11

Come distribuire Docker Compose Stack su Kubernetes con Kompose

Come distribuire e gestire un contenitore Docker MongoDB

Come distribuire CouchDB come cluster con Docker

Come distribuire Rocket Chat con Nginx su Ubuntu 18.04

Come distribuire un'applicazione PHP con Nginx e MySQL utilizzando Docker e Docker Compose