Heim  >  Artikel  >  Betrieb und Instandhaltung  >  So starten Sie den Server mit der Docker-Befehlszeile

So starten Sie den Server mit der Docker-Befehlszeile

PHPz
PHPzOriginal
2023-04-18 09:48:101639Durchsuche

Die Docker-Befehlszeile ist eine sehr verbreitete Bereitstellungsmethode. Bei der Bereitstellung und Verwaltung von Docker-Containern ist es sehr wichtig, die grundlegenden Docker-Befehle zu beherrschen. Das Starten des Docker-Servers ist auch einer der Schlüssel zum Docker-Betrieb. In diesem Artikel erfahren Sie, wie Sie einen Server über die Docker-Befehlszeile starten.

Es gibt zwei Hauptmethoden zum Starten des Docker-Servers: Eine besteht darin, über die Docker-Befehlszeile zu starten, und die andere darin, über die Docker Compose-Datei zu starten. Wir werden diese beiden Methoden separat vorstellen.

Starten Sie den Server über die Docker-Befehlszeile.

Wenn Sie den Server über die Docker-Befehlszeile starten, müssen Sie den Befehl run verwenden. Das Folgende ist das Grundformat zum Starten des Servers über die Docker-Befehlszeile: run 命令。下面是通过 Docker 命令行启动服务器的基本格式:

docker run [OPTIONS] IMAGE [COMMAND] [ARG...]

其中,OPTIONS 表示一些可选参数,IMAGE 表示需要启动的 Docker 镜像名称,COMMAND 表示需要在容器中执行的命令,ARG 表示该命令所需的参数。

下面是一些常用的 Docker 命令行启动服务器的示例:

  1. 启动 Ubuntu 18.04 镜像:
docker run -it ubuntu:18.04 /bin/bash

在命令行中输入上述命令后,将会启动一个基于 Ubuntu 18.04 镜像的 Docker 容器,并自动进入该容器的命令行环境。

  1. 启动 Nginx 镜像:
docker run -d --name my-nginx -p 8080:80 nginx

在命令行中输入上述命令后,将会启动一个基于 Nginx 镜像的 Docker 容器,并将它命名为 my-nginx,并且将容器的 80 端口映射到主机的 8080 端口上。此时,可以通过 http://localhost:8080 访问该容器的 Nginx 服务。

  1. 启动 MySQL 镜像:
docker run -d --name my-mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw mysql:latest

在命令行中输入上述命令后,将会启动一个基于 MySQL 镜像的 Docker 容器,并将它命名为 my-mysql,并设置了 MySQL 的 root 密码为 my-secret-pw

通过上面的命令示例,我们可以看出 Docker 命令行启动服务器的基本操作,也了解了一些常用的启动参数。下面,我们将介绍另一个启动 Docker 服务器的方式——使用 Docker Compose 文件。

通过 Docker Compose 文件启动服务器

Docker Compose 是 Docker 提供的用于定义和运行多个容器应用的工具。在使用 Docker Compose 启动服务器时,需要先定义一个 docker-compose.yml 文件来配置服务启动所需的各种参数。下面是一个简单的 docker-compose.yml 文件示例:

version: '3'
services:
  web:
    build: .
    ports:
      - "5000:5000"
    volumes:
      - .:/code
    command: python app.py

在上述示例中,我们定义了一个名为 web 的服务,在该服务中使用了一个 Dockerfile 文件来构建镜像,将容器的 5000 端口映射到主机的 5000 端口上,将容器中的 /code 卷挂载到主机的当前目录下,并且在容器启动后执行 python app.py 命令。

docker-compose.yml

docker-compose up -d
Darunter stellt OPTIONS einige optionale Parameter dar, IMAGE stellt den Namen des Docker-Images dar der gestartet werden muss, COMMAND stellt den Befehl dar, der im Container ausgeführt werden muss, und ARG stellt die für den Befehl erforderlichen Parameter dar.

Im Folgenden finden Sie einige Beispiele für häufig verwendete Docker-Befehlszeilen zum Starten von Servern:

  1. Starten Sie das Ubuntu 18.04-Image:
docker-compose ps
Nach Eingabe des obigen Befehls in der Befehlszeile a Der Docker-Container basiert auf dem Ubuntu 18.04-Image und gibt automatisch die Befehlszeilenumgebung des Containers ein.

  1. Starten Sie das Nginx-Image:
rrreee

Nach Eingabe des obigen Befehls in der Befehlszeile wird ein Docker-Container basierend auf dem Nginx-Image gestartet und benannt ist my-nginx und ordnet den Port 80 des Containers dem Port 8080 des Hosts zu. Zu diesem Zeitpunkt kann über http://localhost:8080 auf den Nginx-Dienst des Containers zugegriffen werden.

  1. Starten Sie das MySQL-Image:
rrreeeNach Eingabe des obigen Befehls in der Befehlszeile wird ein Docker-Container basierend auf dem MySQL-Image gestartet und benannt ist my-mysql und das MySQL-Root-Passwort ist auf my-secret-pw gesetzt. 🎜🎜Anhand der obigen Befehlsbeispiele können wir die grundlegenden Vorgänge beim Starten des Servers über die Docker-Befehlszeile sehen und auch einige allgemeine Startparameter verstehen. Im Folgenden stellen wir eine weitere Möglichkeit zum Starten eines Docker-Servers vor – mithilfe einer Docker Compose-Datei. 🎜🎜Starten Sie den Server über eine Docker Compose-Datei🎜🎜Docker Compose ist ein von Docker bereitgestelltes Tool zum Definieren und Ausführen mehrerer Containeranwendungen. Wenn Sie Docker Compose zum Starten des Servers verwenden, müssen Sie zunächst eine Datei docker-compose.yml definieren, um verschiedene Parameter zu konfigurieren, die für den Dienststart erforderlich sind. Hier ist ein Beispiel einer einfachen docker-compose.yml-Datei: 🎜rrreee🎜Im obigen Beispiel haben wir einen Dienst namens web definiert, in dem wir „Create a Dockerfile“ verwenden Erstellen Sie eine Datei, um das Image zu erstellen, ordnen Sie den 5000-Port des Containers dem 5000-Port des Hosts zu, mounten Sie das /code-Volume im Container im aktuellen Verzeichnis des Hosts und führen Sie es nach dem Container aus startet den Befehl python app.py. 🎜🎜Nachdem die Datei docker-compose.yml definiert wurde, geben Sie in der Befehlszeile das Verzeichnis ein, in dem sich die Datei befindet, und geben Sie den folgenden Befehl ein, um den Dienst zu starten: 🎜rrreee🎜Nach dem obigen Befehl Wenn es ausgeführt wird, wird ein Docker Compose-Dienst gestartet und im Hintergrund ausgeführt. Mit dem folgenden Befehl können Sie die gestarteten Dienste anzeigen: 🎜rrreee🎜Mit dem obigen Befehl können wir den Docker-Server sehr bequem und schnell starten und über Docker Compose-Dateien mehrere Containeranwendungen definieren und verwalten. 🎜🎜Zusammenfassung🎜🎜Dieser Artikel stellt vor, wie Sie die Docker-Befehlszeile und die Docker-Compose-Datei zum Starten des Servers verwenden, und bietet spezifische Befehlsbeispiele. Wenn Sie diese beiden Startmethoden beherrschen, können Sie Docker-Container problemlos bereitstellen und verwalten. Im tatsächlichen Einsatz können Sie auch andere Docker-Befehle verwenden, um den Container so zu konfigurieren und zu betreiben, dass er effizienter arbeitet. 🎜

Das obige ist der detaillierte Inhalt vonSo starten Sie den Server mit der Docker-Befehlszeile. 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