


Was ist der Unterschied zwischen den Befehlen „docker run' und „docker exec'?
Unterschied: 1. Das Operationsobjekt von „Docker Run“ ist „Mirror“, während das Operationsobjekt von „Docker Exec“ „Container“ ist. 2. „Docker Run“ eignet sich für Situationen, in denen kein Container ausgeführt wird „docker exec“ Geeignet zum Ausführen von Befehlen in vorhandenen Containern.
Die Betriebsumgebung dieses Tutorials: Linux5.9.8-System, Docker-1.13.1-Version, Dell G3-Computer. Der Unterschied zwischen Docker Run und Docker Exec
docker exec: Befehle in einem laufenden Container ausführen, und das Objekt der Operation ist der
Container. „docker run“ ist normalerweise der Befehl, der in neu erstellten Containern verwendet wird. Es eignet sich für Situationen, in denen kein Container ausgeführt wird, Sie jedoch einen Container erstellen, ihn starten und dann einen Prozess darauf ausführen möchten. „docker exec“ eignet sich zum Ausführen von Befehlen in vorhandenen Containern. Wenn Sie bereits einen laufenden Container haben und diesen ändern oder etwas daraus herausholen möchten, dann ist die Verwendung des Befehls „docker exec“ perfekt. Docker-Ausführungsbefehl
Syntaxdocker run [OPTIONS] IMAGE [COMMAND] [ARG...]
-a stdin
:Gibt den standardmäßigen Eingabe- und Ausgabeinhaltstyp an, optional STDIN/STDOUT/STDERR;
-d
: Führen Sie den Container im Hintergrund aus und geben Sie die Container-ID zurück.
- -i
: Führen Sie den Container im interaktiven Modus aus, der normalerweise mit -t verwendet wird -P : Zufällige Portzuordnung, der Container-interne Port
zufällig - wird dem High-Port des Hosts zugeordnet
-p
: - Portzuordnung angeben, das Format ist:
Host ( host) port:Container Port
-t: weist dem Container ein Pseudo-Eingabeterminal zu, das normalerweise mit -i verwendet wird;
- --name="nginx-lb „
: für den Container Geben Sie einen Namen an; --dns 8.8.8.8: Geben Sie den vom Container verwendeten DNS-Server an, der standardmäßig mit dem Host übereinstimmt;
--dns-search example.com: Geben Sie den DNS-Suchdomänennamen des Containers an. Der Standardwert ist derselbe wie der Host
-e username="ritchie": Umgebungsvariablen festlegen;
--env-file=[]: Umgebungsvariablen aus der angegebenen Datei lesen; --cpuset="0-2" oder --cpuset="0,1,2" : Binden Sie den Container zur Ausführung an die angegebene CPU;
-m: Legen Sie die maximale Speichernutzung fest des Containers;
--net="bridge": Geben Sie die Netzwerkverbindung des Containers an, unterstützt Bridge/Host/Keine/Container:
- --link=[]
: Einen Link zu einem anderen Container hinzufügen
- - -expose=[]
: Öffnen Sie einen Port oder eine Gruppe von Ports; -volume, -v: Binden Sie ein Volume
InstanzVerwenden Sie das Docker-Image nginx:latest Starten Sie einen Container im Hintergrundmodus und nennen Sie den Container my-nginx.
docker run --name my-nginx -p 8081:80 -d nginx:latest
Nach dem Login kopierenDer Browser greift auf http://host IP:8081 zu, der Effekt ist wie folgt:
Verwenden Sie das Bild nginx:latest, um einen Container im Hintergrundmodus zu starten, und ordnen Sie den Port 80 des Containers zu der zufällige Port des Hosts:-d : 分离模式: 在后台运行
-i : 即使没有附加也保持STDIN 打开
-t : 分配一个伪终端
docker run -P -d nginx:latest
使用镜像 nginx:latest 以后台模式启动一个容器,将主机的 80 端口映射到容器的 80 端口,主机的目录 /data 映射到容器的 /data:
docker run -p 80:80 -v /data:/data -d nginx:latest
使用镜像 nginx:latest 以交互模式启动一个容器,在容器内执行/bin/bash命令:
docker run -it nginx:latest /bin/bash
docker exec 命令
语法
docker exec [OPTIONS] CONTAINER COMMAND [ARG...]
OPTIONS说明:
在容器名称 my-nginx 中开启一个交互模式的终端:
docker exec -it my-nginx /bin/bash
或者使用容器ID 721eb23901ce 开启一个交互模式的终端:
docker exec -it 721eb23901ce /bin/bash
推荐学习:《docker视频教程》
Das obige ist der detaillierte Inhalt vonWas ist der Unterschied zwischen den Befehlen „docker run' und „docker exec'?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



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).

Um die Docker -Version zu erhalten, können Sie die folgenden Schritte ausführen: Führen Sie den Befehl Docker "Docker --version" aus, um die Client- und Serverversionen anzuzeigen. Für Mac oder Windows können Sie auch Versionsinformationen über die Registerkarte Version der Docker -Desktop -GUI oder das Menü Docker Desktop anzeigen.

Schritte zum Erstellen eines Docker -Images: Schreiben Sie eine Dockerfile, die die Build -Anweisungen enthält. Erstellen Sie das Bild im Terminal mit dem Befehl Docker Build. Markieren Sie das Bild und weisen Sie Namen und Tags mit dem Befehl Docker Tag zu.

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).

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.

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").

Sie können zur Quelle der Inlandsspiegel wechseln. Die Schritte sind wie folgt: 1. Bearbeiten Sie die Konfigurationsdatei /etc/docker/daemon.json und fügen Sie die Spiegelquellenadresse hinzu; 2. Starten Sie den Docker Service Sudo SystemCtl Docker neu, um die Download -Geschwindigkeit und -stabilität des Bilddownloads zu verbessern.

Um das Bild in Docker zu speichern, können Sie den Befehl docker comit verwenden, um ein neues Bild zu erstellen, das den aktuellen Status des angegebenen Containers Syntax: Docker Commit [Optionen] Container -ID -Bildname enthält. Um das Bild im Repository zu speichern, können Sie den Befehl Docker Push, Syntax: Docker -Push -Bildname [: Tag] verwenden. Um gespeicherte Bilder zu importieren, können Sie den Befehl Docker Pull, Syntax: Docker Pull Bildname [: Tag] verwenden.
