Zusammenfassung

In diesem Beitrag haben wir eine Einführung in Docker-Container gegeben und das Konzept der Containerisierung anhand von Konzeptdarstellungen und einem praktischen Beispiel erläutert. Außerdem haben wir das Konfigurieren, Erstellen und Ausführen von Docker-Containern behandelt und das Konzept des gemeinsamen Ausführens mehrerer Docker-Container über Docker-Compose erklärt.

Dieser Beitrag enthält die Antworten für Einführung in Docker Und Einführung in die Containerisierung Raum in TryHackMe.

Was ist Containerisierung

In der Computersprache ist Containerisierung der Prozess, bei dem eine Anwendung und die erforderlichen Ressourcen (wie Bibliotheken und Pakete) in einem Paket, einem sogenannten Container, verpackt werden. Durch das Verpacken von Anwendungen werden diese wesentlich portierbarer und können problemlos ausgeführt werden.

Moderne Anwendungen sind oft komplex und hängen normalerweise davon ab, dass Frameworks und Bibliotheken auf einem Gerät installiert werden, bevor die Anwendung ausgeführt werden kann. Diese Abhängigkeiten können:

  • Die Installation kann je nach Umgebung, in der die Anwendung ausgeführt wird, schwierig sein (einige Betriebssysteme unterstützen sie möglicherweise nicht einmal!)
  • Erschweren Sie Entwicklern die Diagnose und Reproduktion von Fehlern, da das Problem möglicherweise in der Anwendungsumgebung liegt – nicht bei der Anwendung selbst.
  • Können oft miteinander in Konflikt geraten. Beispielsweise ist es für den Benutzer mühsam, mehrere Python-Versionen zum Ausführen verschiedener Anwendungen zu haben, und eine Anwendung funktioniert möglicherweise mit einer Python-Version und nicht mit einer anderen.

Holen Sie sich Hinweise zum OSCP-Zertifikat

Was sind Docker-Container?

Docker ist eine relativ unkomplizierte, umfangreiche und Open-Source-Containerplattform. Das Docker-Ökosystem ermöglicht die einfache Bereitstellung, Verwaltung und Freigabe von Anwendungen (Images – darauf kommen wir später noch zu sprechen).

Arbeiten an Linux, Windows und MacOS, Docker ist eine intelligente Wahl zum Ausführen von Anwendungen. Anwendungen können als „Images“ veröffentlicht und mit anderen geteilt werden. Alles, was erforderlich ist, ist das Abbild abzurufen (herunterzuladen) und es mit Docker auszuführen.

Docker verwendet dieselbe Technologie wie die Containerisierung, um Anwendungen in Containern, der sogenannten Docker Engine, zu isolieren. Die Docker Engine ist im Wesentlichen eine API, die auf dem Host-Betriebssystem ausgeführt wird und zwischen dem Betriebssystem und den Containern kommuniziert, um auf die Hardware des Systems (wie CPU, RAM, Netzwerk und Festplatte) zuzugreifen.

Aus diesem Grund ist die Docker-Engine umfangreich und ermöglicht Ihnen beispielsweise Folgendes:

  1. Verbinden Sie Container miteinander (beispielsweise einen Container, in dem eine Webanwendung ausgeführt wird, und einen anderen Container, in dem eine Datenbank ausgeführt wird).
  2. Anwendungen (Bilder) exportieren und importieren
  3. Übertragen Sie Dateien zwischen Betriebssystem und Container

Docker verwendet die Programmiersyntax YAML um Entwicklern zu ermöglichen, anzugeben, wie ein Container erstellt und was ausgeführt werden soll. Dies ist ein wichtiger Grund, warum Docker so portabel und einfach zu debuggen ist. Geben Sie die Anweisungen weiter, und es wird auf jedem Gerät, das die Docker Engine unterstützt, gleich erstellt und ausgeführt.

Herausforderungen Antworten

Wie heißt die Kernelfunktion, die es Prozessen ermöglicht, Ressourcen des Betriebssystems zu verwenden, ohne mit anderen Prozessen interagieren zu können?
In einem normal Konfiguration, können andere Container miteinander interagieren? (ja/nein)
Was wird aus einer Anwendung, wenn sie mit Docker veröffentlicht wird? Format: Ein xxxxx (füllen Sie die x aus)

Wie lautet die Abkürzung der von Docker verwendeten Programmiersyntaxsprache?

In welchem Jahr wurde Docker ursprünglich erstellt?

Wo wurde Docker erstmals vorgestellt?

Welche Unix-Version hatte die ersten Konzepte zur Containerisierung?

Mit welchem Befehl können wir eine Liste laufender Prozesse anzeigen?
Containerisieren Sie die Anwendungen in der statischen Site. Was ist das Flag?
Wenn wir wollten ziehen ein Docker-Image, wie würde unser Befehl aussehen?

Wie würde unser Befehl aussehen, wenn wir alle Images auf einem Gerät auflisten möchten, auf dem Docker läuft?

Nehmen wir an, wir möchten das Bild „tryhackme“ (ohne Anführungszeichen) abrufen. Wie würde unser Befehl aussehen?

Nehmen wir an, wir möchten das Bild „tryhackme“ mit dem Tag „1337“ (ohne Anführungszeichen) abrufen. Wie würde unser Befehl aussehen?

Wie würde unser Befehl aussehen, wenn wir einen Container ausführen wollten interaktiv?

Hinweis: Gehen Sie davon aus, dass wir hier kein Bild angeben.

Wie würde unser Befehl aussehen, wenn wir einen Container in „losgelöst“-Modus?

Hinweis: Gehen Sie davon aus, dass wir hier kein Bild angeben.

Nehmen wir an, wir möchten einen Container ausführen, der Und Binden Sie einen Webserver an Port 80. Wie würde unser Befehl aussehen?

Notiz: Angenommen, wir geben hier kein Bild an.

Wie würden wir alle auflisten läuft Behälter?

Wie würden wir nun auflisten alle Container (auch angehaltene)?

Welche Anweisung würden wir verwenden, um anzugeben, welches Basis-Image der Container verwenden soll?
Welche Anweisung würden wir verwenden, um dem Container mitzuteilen, dass er einen Befehl ausführen soll?

Welchen Docker-Befehl würden wir verwenden, um ein Image mit einer Docker-Datei zu erstellen?

Nehmen wir an, wir möchten diesem Bild einen Namen geben. Welches Argument würden wir verwenden?

Ich möchte benutzen Docker-Compose  Zu Start-up eine Reihe von Containern. Welches Argument erlaubt mir dies?

Ich möchte benutzen Docker-Compose  Zu löschen die Containerreihe. Welches Argument erlaubt mir dies?

Wie heißt die .yml-Datei, die Docker-Compose Verwendet?

Notiz: Für diese Frage müssen Sie Folgendes angeben: .yml Dateierweiterung in Ihrer Antwort

Wofür steht der Begriff „IPC“?
Mit welcher Technologie ist der Docker-Server vergleichbar?
Stellen Sie eine Verbindung zur Maschine her. Wie lautet der Name des Containers, der aktuell ausgeführt wird?

Verwenden Sie Docker, um einen Webserver mit dem Image „webserver“ (ohne Anführungszeichen) zu starten. Sie müssen Führen Sie den Container mit Port 80 aus.

Versuchen Sie nach dem Starten des Containers eine Verbindung herzustellen mit https://LAB_WEB_URL.p.thmlabs.com/ in Ihrem Browser. Was ist die Flagge?

Video-Anleitung

Über den Autor

Ich erstelle Notizen zur Cybersicherheit, Notizen zum digitalen Marketing und Online-Kurse. Ich biete auch Beratung zum digitalen Marketing an, einschließlich, aber nicht beschränkt auf SEO, Google- und Meta-Anzeigen und CRM-Verwaltung.

Artikel anzeigen