Inhaltsverzeichnis
: Führen Sie den Container im Hintergrund aus und geben Sie die Container-ID zurück.
docker exec 命令
语法
Heim Betrieb und Instandhaltung Docker Was ist der Unterschied zwischen den Befehlen „docker run' und „docker exec'?

Was ist der Unterschied zwischen den Befehlen „docker run' und „docker exec'?

Nov 25, 2021 pm 04:44 PM
docker

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.

Was ist der Unterschied zwischen den Befehlen „docker run' und „docker exec'?

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

Syntax

docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
Nach dem Login kopieren
OPTIONS Beschreibung:

-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:<name|id>

  • --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 kopieren

  • Der 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:
  • docker run -P -d nginx:latest
    Nach dem Login kopieren

    使用镜像 nginx:latest 以后台模式启动一个容器,将主机的 80 端口映射到容器的 80 端口,主机的目录 /data 映射到容器的 /data:

    docker run -p 80:80 -v /data:/data -d nginx:latest
    Nach dem Login kopieren

    使用镜像 nginx:latest 以交互模式启动一个容器,在容器内执行/bin/bash命令:

    docker run -it nginx:latest /bin/bash
    Nach dem Login kopieren


    docker exec 命令

    语法

    docker exec [OPTIONS] CONTAINER COMMAND [ARG...]
    Nach dem Login kopieren

    OPTIONS说明:

    • -d : 分离模式: 在后台运行

    • -i : 即使没有附加也保持STDIN 打开

    • -t : 分配一个伪终端

    在容器名称 my-nginx 中开启一个交互模式的终端:

    docker exec -it my-nginx /bin/bash
    Nach dem Login kopieren

    或者使用容器ID 721eb23901ce 开启一个交互模式的终端:

    docker exec -it 721eb23901ce /bin/bash
    Nach dem Login kopieren

    推荐学习:《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!

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 Artikel -Tags

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 exportieren Sie ein Programm mit Pycharm So exportieren Sie ein Programm mit Pycharm Apr 18, 2024 am 12:09 AM

So exportieren Sie ein Programm mit Pycharm

Was ist der Unterschied zwischen Webstorm und Idee? Was ist der Unterschied zwischen Webstorm und Idee? Apr 08, 2024 pm 08:24 PM

Was ist der Unterschied zwischen Webstorm und Idee?

So verpacken Sie ein Projekt mit Pycharm So verpacken Sie ein Projekt mit Pycharm Apr 25, 2024 am 03:54 AM

So verpacken Sie ein Projekt mit Pycharm

Welche Sprachen unterstützt Pycharm? Welche Sprachen unterstützt Pycharm? Apr 18, 2024 am 10:57 AM

Welche Sprachen unterstützt Pycharm?

Agile Entwicklung und Betrieb der PHP-Microservice-Containerisierung Agile Entwicklung und Betrieb der PHP-Microservice-Containerisierung May 08, 2024 pm 02:21 PM

Agile Entwicklung und Betrieb der PHP-Microservice-Containerisierung

So installieren Sie Deepseek So installieren Sie Deepseek Feb 19, 2025 pm 05:48 PM

So installieren Sie Deepseek

PI -Knotenunterricht: Was ist ein PI -Knoten? Wie installiere und richte ich einen PI -Knoten ein? PI -Knotenunterricht: Was ist ein PI -Knoten? Wie installiere und richte ich einen PI -Knoten ein? Mar 05, 2025 pm 05:57 PM

PI -Knotenunterricht: Was ist ein PI -Knoten? Wie installiere und richte ich einen PI -Knoten ein?

So starten Sie das Golang-Programm So starten Sie das Golang-Programm Apr 21, 2024 am 12:47 AM

So starten Sie das Golang-Programm

See all articles