GNU/Linux >> LINUX-Kenntnisse >  >> Cent OS

Wie man MongoDB mit Docker bereitstellt und verwaltet

Einführung

MongoDB ist eine praktische NoSQL-Datenbanklösung. Es verwendet keine feste Datenstruktur, wodurch es skalierbar und ideal für die Verwaltung dynamischer Workloads ist. MongoDB eignet sich gut für verteilte Umgebungen wie Docker-Container.

Die Verwendung von Docker und einem offiziellen MongoDB-Container-Image kann den Datenbankbereitstellungsprozess erheblich verkürzen und vereinfachen.

Dieses Tutorial zeigt Ihnen, wie Sie eine MongoDB-Instanz in einem Docker-Container bereitstellen .

Voraussetzungen

  • Ein Benutzer mit sudo Privilegien
  • Zugriff auf eine Befehlszeile
  • Eine laufende Docker-Instanz

MongoDB-Image für Docker herunterladen

Befolgen Sie die Schritt-für-Schritt-Anleitung unten, um das neueste offizielle MongoDB-Image für Docker herunterzuladen.

  1. Ihr Docker-Dienst muss aktiv sein und ausgeführt werden. Sie können den aktuellen Status schnell überprüfen, indem Sie den folgenden Befehl in Ihr Terminal eingeben:
sudo service docker status

In diesem Beispiel ist der Docker-Dienst aktiv und wird ausgeführt.

  1. Fahren Sie fort, das neueste offizielle Docker-Image für die MongoDB-Datenbank herunterzuladen:
sudo docker pull mongo

Das Bild zeigt an, dass das System den latest verwendet hat Tag standardmäßig.

Um eine bestimmte Version von MongoDB herunterzuladen, verwenden Sie denselben Befehl, an den das Versions-Tag angehängt ist. Zum Beispiel:

sudo docker pull mongo:4.2.2
  1. Listen Sie die Images in Ihrem Docker-Repository mit dem folgenden Befehl auf:
sudo docker images

Die Schnittstelle bestätigt, dass das MongoDB-Image jetzt verfügbar ist.

MongoDB-Container bereitstellen

Standardmäßig speichert MongoDB Daten im Verzeichnis /data/db Verzeichnis innerhalb des Docker-Containers. Um dies zu beheben, hängen Sie ein Verzeichnis vom zugrunde liegenden Hostsystem in den Container ein, auf dem die MongoDB-Datenbank ausgeführt wird. Auf diese Weise werden Daten auf Ihrem Hostsystem gespeichert und nicht gelöscht, wenn eine Containerinstanz ausfällt.

  1. Erstellen Sie ein /mongodata Verzeichnis auf dem Hostsystem:
sudo mkdir -p /mongodata
  1. Starten Sie den Docker-Container mit run Befehl mit dem Mongo-Image. Die Datei /data/db Verzeichnis im Container wird als /mongodata gemountet auf dem Host. Außerdem ändert dieser Befehl den Namen des Containers in mongodb :
sudo docker run -it -v mongodata:/data/db --name mongodb -d mongo

-it – Bietet eine interaktive Shell für den Docker-Container.

-v – Verwenden Sie diese Option, um die /mongodata anzuhängen Host-Volume nach /data/db Behältervolumen.

-d – Startet den Container als Hintergrundprozess.

--name – Name des Containers.

  1. Sobald der MongoDB-Server in einem Container ausgeführt wird, überprüfen Sie den Status, indem Sie Folgendes eingeben:
sudo docker ps

Die Standardportnummer ist 27017, wie in der Ausgabe zu sehen ist .

  1. Optional können Sie den MongoDB-Port explizit angeben:
sudo docker run -it -v mongodata:/data/db -p 27017:27017 --name mongodb -d mongo
  1. Überprüfen Sie immer das Docker-Protokoll, um die Ereigniskette zu sehen, nachdem Sie Änderungen vorgenommen haben:
sudo docker logs mongodb

Die Protokolle bieten eine Fülle nützlicher Informationen.

Interaktives Docker-Terminal (Bash Shell) starten, um die MongoDB-Datenbank zu verwalten

  1. Der Container wird derzeit im getrennten Modus ausgeführt . Verbinden Sie sich stattdessen über das interaktive Terminal mit dem Container:
sudo docker exec -it mongodb bash
  1. Starten Sie die MongoDB-Shell, indem Sie mongo eingeben im interaktiven Terminal.

Die MongoDB-Shell wird gestartet und die Eingabeaufforderung ist bereit, Ihre Befehle anzunehmen.

  1. Anstatt nur mongo einzugeben , können Sie zusätzlich einen bestimmten Host und Port definieren, indem Sie Folgendes eingeben:
mongo -host localhost -port 27017  

Mit der MongoDB-Shell können Sie jetzt eine Datenbank erstellen, Sammlungen hinzufügen oder einzelne Dokumente verwalten.

So beenden Sie MongoDB und Interactive Shell

Geben Sie exit ein um die MongoDB-Shell zu verlassen und dann exit erneut, um die interaktive Shell zu verlassen.

Alternativ können Sie quit() eingeben oder verwenden Sie Strg-C um die Shell zu verlassen.

MongoDB-Datenbank stoppen und neu starten

Der docker stop command ist ein kurzer und klarer Befehl, der die Ausführung von Containerinstanzen stoppt:

sudo docker stop mongodb

Überprüfen Sie die Liste der ausgeführten Docker-Container, indem Sie Folgendes eingeben:

sudo docker ps

Container werden mithilfe von docker start gestartet Befehl:

sudo docker start mongodb

Die Liste der laufenden Container bestätigt nun, dass die MongoDB-Datenbank erneut initiiert wurde:

sudo docker ps

Cent OS
  1. So installieren und hosten Sie einen OpenVPN-Server mit Docker

  2. So installieren Sie Jenkins mit Docker

  3. So stellen Sie Microservices mit Docker bereit

  4. So stellen Sie Apps mit Rancher bereit

  5. So stellen Sie einen Nginx-Container mit Docker auf Linode bereit

So stellen Sie Pi-Hole unter Debian 11 bereit

So stellen Sie Docker Compose Stacks mit Kompose in Kubernetes bereit

So stellen Sie einen Docker-MongoDB-Container bereit und verwalten ihn

So stellen Sie CouchDB als Cluster mit Docker bereit

So stellen Sie Rocket Chat mit Nginx unter Ubuntu 18.04 bereit

So stellen Sie eine PHP-Anwendung mit Nginx und MySQL mit Docker und Docker Compose bereit