Docker - Einstellung MongoDB

Hallo dort, zukünftige Docker- und MongoDB-Meister! Ich freue mich sehr, Ihr Guide auf dieser aufregenden Reise in die Welt der Containerisierung und Datenbanken zu sein. Als jemand, der seit Jahren Informatik unterrichtet, kann ich Ihnen sagen, dass das Beherrschen dieser Technologien Ihnen eine ganze neue Welt der Möglichkeiten eröffnen wird. Also, tauchen wir ein!

Docker - Setting MongoDB

Verständnis der Grundlagen

Was ist Docker?

Stellen Sie sich vor, Sie ziehen in ein neues Haus. Statt alles separately zu packen, was wäre, wenn Sie einfach Ihr gesamtes Zimmer aufheben und es an Ort und Stelle in Ihrem neuen Zuhause abstellen könnten? Das ist im Wesentlichen, was Docker für Softwareanwendungen macht. Es verpackt alles, was eine Anwendung zum Laufen braucht – den Code, die Laufzeitumgebung, Systemwerkzeuge, Bibliotheken – in einen hübschen kleinen Container.

Was ist MongoDB?

Stellen Sie sich einen riesigen, flexiblen Aktenkasten vor, der alle Arten von Informationen in verschiedenen Formen und Größen speichern kann. Das ist MongoDB in der Kürze. Es ist eine Datenbank, die Ihre Daten nicht in starre Tabellen wie herkömmliche Datenbanken zwängt. Stattdessen lässt es Ihre Daten frei-formartig sein, ein bisschen so, wie Sie Notizen auf ein Stück Papier schreiben könnten.

Docker einrichten

Bevor wir unsere MongoDB-Abenteuerreise antreten können, müssen wir sicherstellen, dass unser Docker-Schiff bereit zum Segeln ist.

Docker installieren

  1. Gehen Sie auf die offizielle Docker-Website (docker.com).
  2. Laden Sie die für Ihr Betriebssystem geeignete Version herunter.
  3. Folgen Sie dem Installationsassistenten – es ist so einfach wie Pie!

Docker-Installation überprüfen

Sobald installiert, lassen Sie uns sicherstellen, dass alles in Ordnung ist:

docker --version

Wenn Sie etwas wie Docker version 20.10.14, build a224086 sehen, sind Sie goldrichtig!

MongoDB-Bild ziehen

Nun, da unser Docker-Motor brummt, holen wir uns das MongoDB-Bild.

docker pull mongo

Dieser Befehl ist so, als ob Sie zum Docker-Supermarkt gehen und eine vorverpackte MongoDB vom Regal nehmen. Easy peasy!

MongoDB in einem Container ausführen

Basic Run Befehl

Zeit, Leben in unseren MongoDB-Container zu blasen:

docker run --name some-mongo -d mongo

Lassen Sie uns das auseinandernehmen:

  • docker run: Das tells Docker, einen neuen Container zu erstellen und zu starten.
  • --name some-mongo: Wir geben unserem Container einen freundlichen Namen.
  • -d: Dies führt den Container im detachierten Modus aus, das bedeutet, er läuft im Hintergrund.
  • mongo: Dies ist das Bild, das wir verwenden, um unseren Container zu erstellen.

Erweiterte Run Befehl

Für die abenteuerlustigen Naturen hier ist ein kräftigerer Befehl mit ein paar Extra-Zutaten:

docker run --name my-mongo -p 27017:27017 -v /path/on/host:/data/db -e MONGO_INITDB_ROOT_USERNAME=admin -e MONGO_INITDB_ROOT_PASSWORD=password -d mongo

Wow, das ist eine Menge! Lassen Sie uns das analysieren:

  • -p 27017:27017: Das maps den Port 27017 des Containers zum Port 27017 des Hosts.
  • -v /path/on/host:/data/db: Das erstellt ein Volume, das einen Verzeichnis auf Ihrem Host mit dem Datenverzeichnis des Containers verknüpft.
  • -e MONGO_INITDB_ROOT_USERNAME=admin -e MONGO_INITDB_ROOT_PASSWORD=password: Diese setzen Umgebungsvariablen, um einen Admin-Benutzer zu erstellen.

MongoDB verbinden

Mit der Mongo Shell

Nun, da unser MongoDB-Container läuft, lassen Sie uns Hallo sagen:

docker exec -it my-mongo mongo

Dieser Befehl ist so, als ob Sie an der Tür des Containers klopfen und um Einlass bitten. Die -it Flags machen das Erlebnis interaktiv, genau wie wenn Sie MongoDB direkt auf Ihrem Computer installiert hätten.

Mit einem MongoDB-Client

Für diejenigen, die eine grafische Oberfläche bevorzugen (weil ja, manchmal brauchen wir alle hübsche Knöpfe), können Sie einen MongoDB-Client wie Robo 3T oder MongoDB Compass verwenden. Verbinden Sie sich einfach mit localhost:27017, und Sie sind drin!

Grundlegende MongoDB-Operationen

Nun, da wir verbunden sind, lassen Sie uns ein bisschen herumspielen.

Datenbank erstellen

use myAwesomeDB

Das ist so, als ob Sie MongoDB sagen: "Hey, ich möchte in diesem neuen Aktenkasten namens myAwesomeDB arbeiten."

Daten einfügen

db.users.insertOne({name: "John Doe", age: 30, email: "[email protected]"})

Denken Sie daran als ob Sie eine neue Datei in Ihren Aktenkasten einlegen. Wir fügen einen Benutzer zu unserer users Sammlung hinzu.

Daten abfragen

db.users.find({name: "John Doe"})

Das ist so, als ob Sie MongoDB fragen: "Kannst du alle Dateien über John Doe für mich finden?"

Verwaltung Ihres MongoDB-Containers

Container stoppen

docker stop my-mongo

Das ist so, als ob Sie Ihrem MongoDB sagen: "Mach mal Pause, Kumpel. Wir sind jetzt fertig."

Container starten

docker start my-mongo

Und wenn Sie bereit sind, wieder zur Arbeit zu gehen, ist dieser Befehl so, als ob Sie sagen: "Alles klar, Pause ist vorbei. Lassen wir uns an die Arbeit machen!"

Container entfernen

docker rm my-mongo

Wenn Sie sich entscheiden, dass Sie diese spezielle MongoDB-Konfiguration nicht mehr benötigen, ist dieser Befehl das Äquivalent von "Danke für deinen Dienst, aber es ist Zeit, Abschied zu nehmen."

MongoDB Methoden Tabelle

Hier ist eine praktische Tabelle einiger gängiger MongoDB-Methoden:

Methode Beschreibung
insertOne() Fügt ein einzelnes Dokument in eine Sammlung ein
insertMany() Fügt mehrere Dokumente in eine Sammlung ein
find() Abfragt eine Sammlung nach Dokumenten
updateOne() Aktualisiert ein einzelnes Dokument in einer Sammlung
updateMany() Aktualisiert mehrere Dokumente in einer Sammlung
deleteOne() Löscht ein einzelnes Dokument aus einer Sammlung
deleteMany() Löscht mehrere Dokumente aus einer Sammlung
aggregate() Führt Aggregationsoperationen auf einer Sammlung durch

Schlussfolgerung

Und da haben Sie es, Leute! Wir haben die Grundlagen der Einrichtung von MongoDB mit Docker durchlaufen, von der Bildabholung bis zu grundlegenden Operationen. Denken Sie daran, wie bei jeder neuen Fähigkeit, kommt die Meisterschaft mit der Übung. Haben Sie keine Angst, Dinge auszuprobieren, kaputt zu machen und aus dem Prozess zu lernen.

Als wir aufhörten, sagte mir ein Schüler einmal, er fühlte sich "verloren auf dem Meer", als er mit Docker und MongoDB begann. Am Ende unseres Kurses sagte er, er fühlte sich wie der Kapitän seines eigenen Schiffes. Ich hoffe, diese Anleitung hilft Ihnen, Ihren eigenen Kurs durch diese aufregenden Technologien zu steuern.

Weiter segeln, weiter lernen und vor allem: Spaß haben! Die Welt der containerisierten Datenbanken ist Ihr Muschel. Ahora vaya y MongoDB mit Docker wie ein Profi!

Credits: Image by storyset