Detaillierte Erklärung der Installationsbefehle und Verwendung von Docker und FastDFS

Detaillierte Erklärung der Installationsbefehle und Verwendung von Docker und FastDFS

Docker-Funktionen

1) Schneller Einstieg

Benutzer benötigen nur wenige Minuten, um ihre Programme zu „dockern“. Docker basiert auf einem „Copy-on-Write“-Modell, mit dem sich Anwendungen sehr schnell ändern lassen. Man kann sagen, dass es den Status „Ändern Sie den Code nach Belieben“ erreicht.

Sie können dann einen Container erstellen, um Ihre Anwendung auszuführen. Die meisten Docker-Container starten in weniger als einer Sekunde. Durch das Entfernen des Overheads des Hypervisors verfügen Docker-Container über eine hohe Leistung und es können mehrere Container auf derselben Hostmaschine ausgeführt werden, sodass Benutzer die Systemressourcen optimal nutzen können.

2) Logische Klassifizierung der Verantwortlichkeiten

Mit Docker müssen sich Entwickler nur um die im Container ausgeführten Anwendungen kümmern, und Betreiber müssen sich nur um die Verwaltung des Containers kümmern. Der Zweck des Docker-Designs besteht darin, die Konsistenz zwischen der Entwicklungsumgebung, in der Entwickler Code schreiben, und der Produktionsumgebung, in der Anwendungen bereitgestellt werden, zu verbessern. Dadurch wird die Wahrnehmung verringert, dass „während der Entwicklung alles normal war und es sich daher um ein Betriebs- und Wartungsproblem handeln muss (die Testumgebung ist normal, aber nach dem Online-Zugriff sind Probleme aufgetreten, sodass es sich um ein Betriebs- und Wartungsproblem handeln muss)“.

3) Schneller und effizienter Entwicklungslebenszyklus

Eines der Ziele von Docker besteht darin, den Zyklus für Codeentwicklung, Tests, Bereitstellung und Onlinebetrieb zu verkürzen, sodass Ihre Anwendungen portierbar, leicht zu erstellen und gemeinsam zu bearbeiten sind. (Einfach ausgedrückt ist Docker wie eine Box, die viele Objekte aufnehmen kann. Wenn Sie diese Objekte benötigen, können Sie sie direkt aus der großen Box herausnehmen, ohne sie einzeln aus der Box nehmen zu müssen.)

4) Fördern Sie den Einsatz serviceorientierter Architektur

Docker fördert außerdem eine serviceorientierte Architektur und eine Microservices-Architektur. Docker empfiehlt, dass ein einzelner Container nur eine Anwendung oder einen Prozess ausführt, wodurch ein verteiltes Anwendungsmodell entsteht. In diesem Modell können Anwendungen oder Dienste als eine Reihe intern miteinander verbundener Container dargestellt werden, was die Bereitstellung verteilter Anwendungen, die Erweiterung oder das Debuggen von Anwendungen sehr einfach macht und auch die Introspektion des Programms verbessert. (Natürlich können Sie mehrere Anwendungen in einem Container ausführen)

Was tun mit Docker?

Container sorgen für Isolation und können eine gute Sandbox-Umgebung für verschiedene Tests bereitstellen. Darüber hinaus ist der Behälter

Aufgrund seines „Standardcharakters“ eignet sich PHP ideal zum Erstellen von Bausteinen für Dienste. Einige Anwendungsszenarien von Docker sind wie folgt:

  • Beschleunigen Sie lokale Entwicklungs- und Build-Prozesse und machen Sie sie effizienter und leichter. Lokale Entwickler können Docker-Container erstellen, ausführen und freigeben. Container können in einer Entwicklungsumgebung erstellt und dann problemlos in eine Testumgebung und schließlich in eine Produktionsumgebung übertragen werden.
  • Es ermöglicht unabhängigen Diensten oder Anwendungen, in unterschiedlichen Umgebungen dieselben Betriebsergebnisse zu erzielen. Dies ist besonders nützlich in serviceorientierten Architekturen und Bereitstellungen, die stark auf Microservices basieren.
  • Verwenden Sie Docker, um eine isolierte Umgebung zum Testen zu erstellen. Verwenden Sie beispielsweise ein kontinuierliches Integrationstool wie Jenkins CI, um einen Container zum Testen zu starten.
  • Docker ermöglicht es Entwicklern, ein komplexes Programm oder eine Architektur zum Testen auf ihrer lokalen Maschine zu erstellen, anstatt es von Anfang an in einer Produktionsumgebung bereitzustellen und zu testen.

Installation und Betrieb

1. Installieren Sie Docker in Ubuntu

Aktualisieren Sie den Apt-Quellindex von Ubuntu

sudo apt-get update

Installieren Sie das Paket, um apt die Nutzung von Repositorien über HTTPS zu ermöglichen

sudo apt-get install \
  apt-transport-https \
  CA-Zertifikate \
  Locke \
  Software-Eigenschaften-allgemein

Offiziellen GPG-Schlüssel von Docker hinzufügen

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

Einrichten des stabilen Docker-Repository

sudo add-apt-repository \
  "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
  $(lsb_release -cs) \
  stabil"

Aktualisieren Sie nach dem Hinzufügen des Repository den Apt-Quellindex

sudo apt-get update

Installieren Sie die neueste Version von Docker CE (Community Edition).

sudo apt-get installiere docker-ce

Überprüfen Sie, ob Docker CE korrekt installiert ist

sudo docker run hallo-welt

Die folgende Meldung zeigt an, dass die Installation erfolgreich war

Um zu vermeiden, bei jedem Ausführen eines Befehls sudo einzugeben, können Sie Benutzerberechtigungen festlegen. Beachten Sie, dass Sie sich nach dem Ausführen des Befehls ab- und wieder anmelden müssen.

sudo usermod -a -G docker $USER

2. Starten und Stoppen

Nach der Installation von Docker wird der Docker-Dienst standardmäßig gestartet. Wenn Sie den Start und Stopp des Docker-Dienstes manuell steuern müssen, können Sie den folgenden Befehl ausführen

# Docker starten
sudo service docker start

# Docker stoppen
sudo service docker stop

# Docker neu starten
sudo service docker restart

3. Docker-Image-Betrieb

1. Bilder auflisten

Docker-Image ls

2. Ziehen Sie das Bild

Um ein bestimmtes Bild zu erhalten, können wir den Pull-Befehl verwenden, um das Bild vom Lager in das lokale Lager zu ziehen, z. B.

Docker-Image-Pull-Bibliothek/Hallo Welt

Da die von Docker offiziell bereitgestellten Image-Dateien alle in der Bibliotheksgruppe abgelegt werden, handelt es sich dabei um die Standardgruppe und kann weggelassen werden. Daher kann der obige Befehl wie folgt geschrieben werden.

Docker-Image ziehen Hallo-Welt

3. Löschen Sie das Bild

Docker-Image RM Image-Name oder Image-ID

4. Docker-Containerbetrieb

Erstellen eines Containers

docker run [Option] Imagename [an den Startcontainer übergebener Befehl]

Beschreibung allgemeiner optionaler Parameter:

  • -i bedeutet, den Container im „interaktiven Modus“ auszuführen
  • -t bedeutet, dass der Container nach dem Start seine Befehlszeile eingibt. Nachdem Sie diese beiden Parameter hinzugefügt haben, können Sie sich nach der Erstellung beim Container anmelden. Das heißt, weisen Sie ein Pseudoterminal zu.
  • --name Benennen Sie den erstellten Container
  • -v gibt die Verzeichniszuordnungsbeziehung an (ersteres ist das Hostverzeichnis und letzteres ist das dem Host zugeordnete Verzeichnis, d. h. Hostverzeichnis: Verzeichnis im Container). Mehrere -v können verwendet werden, um mehrere Verzeichnisse oder Dateien zuzuordnen. Hinweis: Am besten führen Sie eine Verzeichniszuordnung durch, nehmen Änderungen auf dem Hostcomputer vor und geben diese dann für den Container frei.
  • -d Wenn Sie nach dem Ausführen den Parameter -d hinzufügen, wird ein geschützter Container erstellt und im Hintergrund ausgeführt (auf diese Weise melden Sie sich nach der Erstellung nicht automatisch beim Container an. Wenn Sie nur die Parameter -i -t hinzufügen, betreten Sie den Container nach der Erstellung automatisch).
  • -p bedeutet Port-Mapping. Ersteres ist der Host-Port und letzteres der Mapping-Port im Container. Sie können mehrere -p verwenden, um mehrere Ports zuzuordnen.
  • -e legt Umgebungsvariablen für den Container fest
  • --network=host bedeutet, dass die Netzwerkumgebung des Hosts dem Container zugeordnet wird, und das Netzwerk des Containers ist dasselbe wie das des Hosts.

Interaktive Container

Erstellen Sie beispielsweise einen interaktiven Container und nennen Sie ihn myubuntu

docker run -it --name=myubuntu ubuntu /bin/bash

Sie können Linux-Befehle nach Belieben im Container ausführen, der eine Ubuntu-Umgebung ist. Wenn der Befehl exit zum Beenden ausgeführt wird, wird auch der Container angehalten.

Bewachter Container

Einen Daemon-Container erstellen: Wenn ein Container lange laufen muss, können wir einen Daemon-Container erstellen. Wenn Sie den Container verlassen, wird er nicht angehalten.

docker run -dit --name=myubuntu2 ubuntu

Geben Sie den laufenden Container ein

docker exec -it Containername oder Container-ID Der erste Befehl, der nach der Eingabe ausgeführt wird

wie

docker exec -it myubuntu2 /bin/bash

Container anzeigen

# Listet die Container auf, die auf diesem Rechner laufen Docker Container ls

# Listet alle Container auf dieser Maschine auf, einschließlich des beendeten Docker-Containers ls --all

Stoppen und Starten von Containern

#Stoppen Sie einen bereits laufenden Container Docker-Container Stoppen Sie den Containernamen oder die Container-ID

# Starten Sie einen angehaltenen Container Docker-Container Start Containername oder Container-ID

# Einen laufenden Container beenden Docker-Container beenden Containername oder Container-ID

Löschen eines Containers

Docker-Container RM-Containername oder Container-ID

5. Speichern Sie den Container als Image

Mit folgendem Befehl können wir den Container als Image speichern

Docker-Commit-Containername, Imagename

6. Image-Backup und Migration

Mit dem Befehl „Speichern“ können wir das Bild in eine Datei packen und es zur Verwendung an andere kopieren.

docker save -o Gespeicherter Dateiname Imagename

wie

docker save -o ./ubuntu.tar ubuntu

Nachdem Sie die Bilddatei erhalten haben, können Sie das Bild mit der Lademethode auf den lokalen Computer laden.

docker load -i ./ubuntu.tar

Installieren Sie FastDFS mit Docker

1. Holen Sie sich das Bild

Sie können das vorhandene FastDFS-Docker-Image verwenden, um FastDFS auszuführen.

Sie können das Bild herunterladen unter

Docker-Image zieht Delron/FastDFS

Nachdem Sie das Image geladen haben, können Sie den Tracker und den Speicher von FastDFS ausführen.

2. Führen Sie den Tracker aus

Führen Sie den folgenden Befehl aus, um den Tracker-Dienst zu starten

docker run -dti --network=host --name tracker -v /var/fdfs/tracker:/var/fdfs delron/fastdfs tracker

Wir ordnen das Ausführungsverzeichnis des FastDFS-Trackers dem lokalen Verzeichnis /var/fdfs/tracker zu.

Führen Sie den folgenden Befehl aus, um zu überprüfen, ob der Tracker läuft

Docker-Container ls

Wenn Sie den Tracker-Dienst stoppen möchten, können Sie den folgenden Befehl ausführen

Docker-Container-Stop-Tracker

Nach dem Stoppen führen Sie den Tracker erneut aus und führen den folgenden Befehl aus

Docker-Container-Start-Tracker

3. Speicher ausführen

Führen Sie den folgenden Befehl aus, um den Speicherdienst zu starten

docker run -dti --network=host --name storage -e TRACKER_SERVER=10.211.55.5:22122 -v /var/fdfs/storage:/var/fdfs delron/fastdfs storage
  • TRACKER_SERVER=Die lokale IP-Adresse: 22122. Verwenden Sie nicht 127.0.0.1 als lokale IP-Adresse.
  • Wir ordnen das FastDFS-Speicherlaufverzeichnis dem lokalen Verzeichnis /var/fdfs/storage zu.

Führen Sie den folgenden Befehl aus, um zu überprüfen, ob der Speicher ausgeführt wird

Docker-Container ls

Wenn Sie den Speicherdienst stoppen möchten, können Sie den folgenden Befehl ausführen

Docker-Container, Stoppspeicher

Nach dem Stoppen führen Sie den Speicher erneut aus und führen den folgenden Befehl aus

Docker-Container, Speicher starten

Hinweis: Wenn Sie den Vorgang nicht erneut ausführen können, löschen Sie die Datei fdfs_storaged.pid im Verzeichnis /var/fdfs/storage/data und führen Sie die Speicherung erneut aus.

Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, er wird für jedermanns Studium hilfreich sein. Ich hoffe auch, dass jeder 123WORDPRESS.COM unterstützen wird.

Das könnte Sie auch interessieren:
  • So installieren Sie FastDFS in Docker
  • Erstellen eines FastDFS-Dateisystems in Docker (Tutorial mit mehreren Images)
  • So stellen Sie FastDFS in Docker bereit
  • Einige Hinweise zur Installation eines Fastdfs-Images im Docker

<<:  Fallstudie zur dynamischen Datenbindung von this.$set in Vue

>>:  Chinesische Lösung und Beispielcode für die MySQL-Volltextsuche

Artikel empfehlen

React implementiert dynamische Popup-Fensterkomponente

Wenn wir beim Schreiben einiger UI-Komponenten di...

Diagramm des Datenübertragungsprozesses beim dritten TCP-Handshake

Die Prozesspakete mit dem SYN-Flag im RFC793-Doku...

Schritte zum Übertragen von Dateien und Ordnern zwischen zwei Linux-Servern

Heute habe ich mich mit der Migration eines Proje...

5 Möglichkeiten, um schnell den Leerraum eines Inline-Blocks in HTML zu entfernen

Der Eigenschaftswert „Inline-Block“ ist sehr nütz...

Tutorials der MySQL-Reihe für Anfänger

Inhaltsverzeichnis 1. Grundkonzepte und Grundbefe...

So konfigurieren Sie geplante MySQL-Aufgaben (EVENT-Ereignisse) im Detail

Inhaltsverzeichnis 1. Was ist eine Veranstaltung?...

Beispielanalyse der MySQL-Datumsverarbeitungsfunktion

Dieser Artikel stellt hauptsächlich die Beispiela...

Alibaba Cloud Ubuntu 16.04 baut IPSec-Dienst auf

Einführung in IPSec IPSec (Internet Protocol Secu...