Inhaltsverzeichnis
Kann es mit Docker bereitgestellt werden?
Heim Betrieb und Instandhaltung Docker Kann es mit Docker bereitgestellt werden?

Kann es mit Docker bereitgestellt werden?

Aug 15, 2022 pm 05:09 PM
docker

es kann mit Docker bereitgestellt werden; die Bereitstellung von ES-Clustern kann direkt mit „Docker-Compose“ erfolgen. „Docker-Compose“ ist ein Docker-Tool, das zum Definieren und Ausführen komplexer Anwendungen verwendet wird, die normalerweise aus mehreren bestehen Besteht aus Containern, macht die Verwendung von „docker-compose“ die Verwendung von Shell-Skripten zum Starten der Container überflüssig.

Kann es mit Docker bereitgestellt werden?

Die Betriebsumgebung dieses Tutorials: Linux7.3-System, Docker-Version 19.03, Dell G3-Computer.

Kann es mit Docker bereitgestellt werden?

Die Bereitstellung von es-Clustern kann direkt mit Docker-Compose erfolgen.

Docker Compose ist ein Docker-Tool zum Definieren und Ausführen komplexer Anwendungen. Eine Anwendung, die Docker-Container verwendet, besteht normalerweise aus mehreren Containern. Für die Verwendung von Docker Compose sind keine Shell-Skripte mehr erforderlich, um Container zu starten.

Compose verwaltet mehrere Docker-Container über eine Konfigurationsdatei. In der Konfigurationsdatei werden alle Container nach Diensten definiert. Anschließend wird das Docker-Compose-Skript zum Starten, Stoppen und Neustarten der Anwendung, der Dienste in der Anwendung und aller abhängigen Dienste verwendet Services-Container eignen sich sehr gut für Szenarien, in denen mehrere Container für die Entwicklung kombiniert werden.

Wissen erweitern

Einführung in ES-Cluster

Warum ein Cluster benötigt wird

Die elastische Suche auf einer Maschine wird zwangsläufig mit zwei Problemen bei der Datenspeicherung konfrontiert sein: massive Datenspeicherprobleme und Single-Point-of-Failure-Probleme.

Massives Datenspeicherproblem: Teilen Sie die Indexbibliothek logisch in N Shards (Shards) auf und speichern Sie sie auf mehreren Knoten.

Single Point of Failure-Problem: Sichern Sie Shard-Daten auf verschiedenen Knoten (Replikat)

ES Clusterbezogene Konzepte

  • Cluster (Cluster): eine Gruppe von Knoten mit einem gemeinsamen Clusternamen.

  • Node: Eine Elasticsearch-Instanz im Cluster

  • Shard: Der Index kann zur Speicherung in verschiedene Teile, sogenannte Shards, aufgeteilt werden. In einer Clusterumgebung können verschiedene Shards eines Index in verschiedene Knoten aufgeteilt werden.

Lösen Sie das Problem: zu viele Daten und begrenzter Einzelpunktspeicher.

Kann es mit Docker bereitgestellt werden?

Hier teilen wir die Daten in 3 Shards auf: Shard0, Shard1, Shard2

  • Primärer Shard: relativ zur Definition von Replikat-Shards.

  • Replikat-Shard Jeder primäre Shard kann ein oder mehrere Replikate haben, und die Daten sind dieselben wie der primäre Shard.

Datensicherung kann eine hohe Verfügbarkeit gewährleisten, aber die Sicherung einer Kopie jedes Shards verdoppelt die Anzahl der erforderlichen Knoten und die Kosten sind zu hoch!

Um ein Gleichgewicht zwischen hoher Verfügbarkeit und Kosten zu finden, können wir Folgendes tun:

  • Zuerst die Daten aufteilen und in verschiedenen Knoten speichern.

  • Dann jeden Shard sichern und auf dem anderen Knoten ablegen. vollständig Sich gegenseitig sichern

Dadurch kann die Anzahl der erforderlichen Serviceknoten erheblich reduziert werden. Wie in der Abbildung gezeigt, nehmen wir als Beispiel 3 Shards und eine Kopie jedes Shards:

Kann es mit Docker bereitgestellt werden?

Erstellen Sie einen ES Cluster

Die Bereitstellung eines ES-Clusters kann direkt mit Docker-Compose erfolgen, aber Ihre virtuelle Linux-Maschine muss über mindestens 4 GB Speicherplatz verfügen. Schreiben Sie zunächst eine Docker-Compose-Datei mit dem folgenden Inhalt:

version: '2.2'
services:
  es01:
    image: elasticsearch:7.12.1
    container_name: es01
    environment:
      - node.name=es01
      - cluster.name=es-docker-cluster
      - discovery.seed_hosts=es02,es03
      - cluster.initial_master_nodes=es01,es02,es03
      - "ES_JAVA_OPTS=-Xms512m -Xmx512m"
    volumes:
      - data01:/usr/share/elasticsearch/data
    ports:
      - 9200:9200
    networks:
      - elastic
  es02:
    image: elasticsearch:7.12.1
    container_name: es02
    environment:
      - node.name=es02
      - cluster.name=es-docker-cluster
      - discovery.seed_hosts=es01,es03
      - cluster.initial_master_nodes=es01,es02,es03
      - "ES_JAVA_OPTS=-Xms512m -Xmx512m"
    volumes:
      - data02:/usr/share/elasticsearch/data
    ports:
      - 9201:9200
    networks:
      - elastic
  es03:
    image: elasticsearch:7.12.1
    container_name: es03
    environment:
      - node.name=es03
      - cluster.name=es-docker-cluster
      - discovery.seed_hosts=es01,es02
      - cluster.initial_master_nodes=es01,es02,es03
      - "ES_JAVA_OPTS=-Xms512m -Xmx512m"
    volumes:
      - data03:/usr/share/elasticsearch/data
    networks:
      - elastic
    ports:
      - 9202:9200
volumes:
  data01:
    driver: local
  data02:
    driver: local
  data03:
    driver: local
networks:
  elastic:
    driver: bridge
Nach dem Login kopieren

Inführung in den Dateiinhalt:

Version: complse Version

es01: Knoten

image: Mirror

Container_Name: Container Name

Environment: Umgebungsvariable

Node.Name: Knotenname

cluster.Name: Cluster name, es erstellt automatisch einen Cluster

discovery: Die Adressen der anderen beiden, die durch Containernamen miteinander verbunden werden können

cluster.initial_master_nodes: Der initialisierte Masterknoten, der an der Wahl teilnehmen kann

"ES_JAVA_OPTS=- Xms512m –

Das obige ist der detaillierte Inhalt vonKann es mit Docker bereitgestellt werden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

So aktualisieren Sie das Bild von Docker So aktualisieren Sie das Bild von Docker Apr 15, 2025 pm 12:03 PM

Die Schritte zur Aktualisierung eines Docker -Images sind wie folgt: Ziehen Sie das neueste Bild -Tag. Neues Bild Löschen Sie das alte Bild für ein bestimmtes Tag (optional) den Container neu (falls erforderlich) neu starten Sie neu (falls erforderlich).

So verlassen Sie den Container mit Docker So verlassen Sie den Container mit Docker Apr 15, 2025 pm 12:15 PM

Vier Möglichkeiten zum Beenden von Docker Container: Verwenden Sie Strg D im Befehl Container Terminal ENGEBOT IM Container Terminal verwenden Sie Docker Stop & lt; container_name & gt; Befehl verwenden Sie Docker Kill & lt; container_name & gt; Befehl im Host -Terminal (Force Exit)

So kopieren Sie Dateien in Docker nach außen So kopieren Sie Dateien in Docker nach außen Apr 15, 2025 pm 12:12 PM

Methoden zum Kopieren von Dateien in externen Hosts in Docker: Verwenden Sie den Befehl Docker CP: Docker CP [Optionen] & lt; Containerpfad & gt; & lt; Host -Pfad & gt;. Verwenden von Datenvolumina: Erstellen Sie ein Verzeichnis auf dem Host und verwenden Sie den Parameter -V, um das Verzeichnis in den Container zu montieren, um den Container zu erstellen, um eine bidirektionale Dateisynchronisation zu erreichen.

So starten Sie Docker neu So starten Sie Docker neu Apr 15, 2025 pm 12:06 PM

So starten Sie den Docker -Container neu: Holen Sie sich die Container -ID (Docker PS); Stop den Container (Docker Stop & lt; Container_id & gt;); Starten Sie den Container (Docker start & lt; container_id & gt;); Stellen Sie sicher, dass der Neustart erfolgreich ist (Docker PS). Andere Methoden: Docker Compose (Docker-Compose Neustart) oder Docker-API (siehe Docker-Dokumentation).

So überprüfen Sie den Namen des Docker -Containers So überprüfen Sie den Namen des Docker -Containers Apr 15, 2025 pm 12:21 PM

Sie können den Namen des Docker -Containers abfragen, indem Sie den Schritten folgen: Alle Container auflisten (Docker PS). Filtern Sie die Containerliste (unter Verwendung des GREP -Befehls). Ruft den Containernamen ab (befindet sich in der Spalte "Namen").

So verwenden Sie Docker Desktop So verwenden Sie Docker Desktop Apr 15, 2025 am 11:45 AM

Wie benutze ich Docker Desktop? Docker Desktop ist ein Werkzeug zum Ausführen von Docker -Containern auf lokalen Maschinen. Zu den zu verwendenden Schritten gehören: 1.. Docker Desktop installieren; 2. Start Docker Desktop; 3.. Erstellen Sie das Docker -Bild (mit Dockerfile); 4. Build Docker Image (mit Docker Build); 5. Docker -Container ausführen (mit Docker Run).

So sehen Sie den Docker -Prozess So sehen Sie den Docker -Prozess Apr 15, 2025 am 11:48 AM

Docker Process Viewing -Methode: 1. Docker Cli -Befehl: Docker PS; 2. SYSTEMD CLI -Befehl: SystemCTL Status Docker; 3.. Docker Compose CLI Command: Docker-Compose PS; 4. Process Explorer (Windows); 5. /proc -Verzeichnis (Linux).

Was tun, wenn das Docker -Bild fehlschlägt? Was tun, wenn das Docker -Bild fehlschlägt? Apr 15, 2025 am 11:21 AM

Fehlerbehebung Schritte für fehlgeschlagene Docker -Bild Build: Überprüfen Sie die Dockerfile -Syntax und die Abhängigkeitsversion. Überprüfen Sie, ob der Build -Kontext den erforderlichen Quellcode und die erforderlichen Abhängigkeiten enthält. Sehen Sie sich das Build -Protokoll für Fehlerdetails an. Verwenden Sie die Option -Target -Option, um eine hierarchische Phase zu erstellen, um Fehlerpunkte zu identifizieren. Verwenden Sie die neueste Version von Docker Engine. Erstellen Sie das Bild mit--t [Bildname]: Debugg-Modus, um das Problem zu debuggen. Überprüfen Sie den Speicherplatz und stellen Sie sicher, dass dies ausreicht. Deaktivieren Sie Selinux, um eine Störung des Build -Prozesses zu verhindern. Fragen Sie Community -Plattformen um Hilfe, stellen Sie Dockerfiles an und erstellen Sie Protokollbeschreibungen für genauere Vorschläge.

See all articles