Heim  >  Artikel  >  Betrieb und Instandhaltung  >  So starten Sie den Dienst im Container in Docker

So starten Sie den Dienst im Container in Docker

PHPz
PHPzOriginal
2023-05-16 21:17:061797Durchsuche

Mit der zunehmenden Beliebtheit der Containerisierungstechnologie ist Docker zum Vertreter der Containerisierungstechnologie geworden. Die Einfachheit und Benutzerfreundlichkeit von Docker haben es zu einem Mainstream-Tool für die Containerisierungstechnologie gemacht. Für Anfänger kann es jedoch schwierig sein, den Dienst im Container zu starten. In diesem Artikel stellen wir vor, wie Docker Dienste in Containern startet.

Docker installieren

Zuerst müssen wir Docker lokal installieren. Spezifische Methoden zur Installation von Docker finden Sie in der offiziellen Dokumentation oder anderen verwandten Informationen. Nachdem die Installation abgeschlossen ist, können wir mit dem Docker-Befehl feststellen, ob Docker korrekt installiert ist. Sie können die Version von Docker überprüfen, indem Sie den folgenden Befehl ausführen:

docker version

Öffnen Sie den Container

Sobald Docker installiert ist, müssen wir einen Container in Docker öffnen. Ein Container in Docker bezieht sich auf alle Komponenten und Bibliotheken, die zum Ausführen einer vollständigen Anwendung erforderlich sind. Wir können das Image vom Docker Hub herunterladen, um den Container zu starten, oder wir können selbst ein Image erstellen. Auf die Herstellung von Spiegeln möchte ich hier nicht näher eingehen. Hier wird davon ausgegangen, dass wir bereits ein Bild mit dem Namen myimage haben. myimage的镜像。

启动容器的命令语法为:

docker run [OPTIONS] IMAGE[:TAG|@DIGEST] [COMMAND] [ARG...]
  • OPTIONS:可选参数列表。
  • IMAGE[:TAG|@DIGEST]:所要启动的镜像或版本号。
  • COMMAND:容器所需运行的命令。
  • ARG...:命令的参数。

比较常用的选项有:

  • -p port:port:指定容器与主机之间端口映射的规则。
  • -d:表示以后台模式运行。
  • -v host:container:借助挂载命令,实现主机目录与容器目录之间的数据共享。
  • --name name:指定容器名称。

通过以下命令启动容器:

docker run --name mycontainer -d -p 8080:80 myimage

通过以上命令,我们以myimage镜像为模板,启动了一个名为mycontainer的后台容器,同时将容器内部的80端口映射到本地的8080端口。

查看容器状态

启动容器之后,我们需要确认容器状态。可以通过以下命令查看容器状态:

docker ps

执行完上述命令后,我们可以得到类似以下的内容:

CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                  NAMES
b318194bdaf2        myimage             "nginx -g 'daemon of…"   About an hour ago   Up About an hour    0.0.0.0:8080->80/tcp   mycontainer

从这个输出中可以看到容器ID、所使用的镜像,容器所运行的命令以及映射的端口等信息。如果没有看到自己刚刚启动的容器,可以使用docker ps -a命令查看所有容器的状态。

进入容器

如果我们需要在容器内部操作,可以通过以下命令进入到容器内部:

docker exec -it <容器ID或名称> <命令>

例如,以下命令可以进入mycontainer容器中的bash终端:

docker exec -it mycontainer bash

这个命令的-it选项表示我们需要开启一个交互式的tty终端,并让容器内部的bash shell执行命令。

容器内服务操作

通过以上步骤,我们已经成功启动了Docker容器,并且能够进入到容器内部,接下来我们需要开启容器内的服务。

对于常见的服务,例如web服务(nginx、Apache)、数据库服务(MySQL、PostgreSQL等)等,我们可以通过以下命令启动这些服务:

# 启动nginx服务
docker exec -it mycontainer service nginx start

# 启动MySQL服务
docker exec -it mycontainer service mysql start

也可以通过以下命令手动启动服务:

docker exec -it mycontainer <service_name> <command>

这里只需将228f6100813b78cf4e67a226afdd5874替换为你需要启动的服务名称,e2b9f03cad787b9644e1f51fd23b7dac

Die Befehlssyntax zum Starten eines Containers lautet:

rrreee

  • OPTIONS: optionale Parameterliste.
  • IMAGE[:TAG|@DIGEST]: Das zu startende Image oder die Versionsnummer.
  • BEFEHL: Der Befehl, den der Container ausführen muss.
  • ARG...: Parameter des Befehls.
Die am häufigsten verwendeten Optionen sind:

  • -p port:port: Geben Sie die Regeln für die Portzuordnung zwischen dem Container und dem Host an.
  • -d: Zeigt die Ausführung im Hintergrundmodus an.
  • -v host:container: Verwenden Sie den Befehl mount, um die Datenfreigabe zwischen dem Hostverzeichnis und dem Containerverzeichnis zu realisieren.
  • --name name: Geben Sie den Containernamen an.
Starten Sie den Container mit dem folgenden Befehl: 🎜rrreee🎜Mit dem obigen Befehl verwenden wir das myimage-Bild als Vorlage, um einen Hintergrundcontainer namens mycontainer zu starten und den 80-Port im Container zuzuordnen der lokale Port 8080. 🎜🎜Containerstatus anzeigen🎜🎜Nach dem Starten des Containers müssen wir den Containerstatus bestätigen. Sie können den Containerstatus mit dem folgenden Befehl überprüfen: 🎜rrreee🎜Nach der Ausführung des obigen Befehls erhalten wir etwas Ähnliches wie Folgendes: 🎜rrreee🎜Aus dieser Ausgabe können Sie die Container-ID, das verwendete Bild und die Befehlsausführung sehen nach Container, Mapping-Port und anderen Informationen. Wenn der gerade gestartete Container nicht angezeigt wird, können Sie mit dem Befehl docker ps -a den Status aller Container anzeigen. 🎜🎜Betreten Sie den Container🎜🎜Wenn wir innerhalb des Containers arbeiten müssen, können wir den Container über den folgenden Befehl eingeben: 🎜rrreee🎜Zum Beispiel kann der folgende Befehl das Bash-Terminal im Mycontainer-Container eingeben: 🎜rrreee🎜-it dieses Befehls Die Option zeigt an, dass wir ein interaktives TTY-Terminal öffnen und die Bash-Shell im Container den Befehl ausführen lassen müssen. 🎜🎜Dienstbetrieb im Container🎜🎜Durch die oben genannten Schritte haben wir den Docker-Container erfolgreich gestartet und können den Container betreten. Als nächstes müssen wir den Dienst im Container starten. 🎜🎜Für gängige Dienste wie Webdienste (Nginx, Apache), Datenbankdienste (MySQL, PostgreSQL usw.) können wir diese Dienste mit den folgenden Befehlen starten: 🎜rrreee🎜 Sie können die Dienste auch manuell mit den folgenden Befehlen starten Befehle: 🎜rrreee🎜 Ersetzen Sie hier einfach 228f6100813b78cf4e67a226afdd5874 durch den Namen des Dienstes, den Sie starten müssen, und e2b9f03cad787b9644e1f51fd23b7dac durch den Befehl, den Sie ausführen müssen. 🎜🎜Zusammenfassung🎜🎜Oben erfahren Sie, wie Sie den internen Dienst des Containers in Docker öffnen. Zuerst müssen Sie das Docker-Tool installieren und den Container in der Docker-Umgebung starten. Nach dem Betreten des Containers können Sie die Dienste im Container starten, indem Sie Befehle ausführen. Docker bringt mehr Flexibilität und Skalierbarkeit in die Containerisierungstechnologie. Ich glaube, dass die Beherrschung der oben genannten Fähigkeiten Ihnen helfen wird, einen weiteren Schritt in der Containerisierungstechnologie zu machen. 🎜

Das obige ist der detaillierte Inhalt vonSo starten Sie den Dienst im Container in Docker. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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