Heim > Backend-Entwicklung > PHP-Tutorial > Wie verwende ich Docker Swarm für die Cluster-Paketierung und Bereitstellung von PHP-Programmen?

Wie verwende ich Docker Swarm für die Cluster-Paketierung und Bereitstellung von PHP-Programmen?

PHPz
Freigeben: 2023-07-30 06:36:02
Original
1453 Leute haben es durchsucht

Wie verwende ich Docker Swarm für die Cluster-Paketierung und Bereitstellung von PHP-Programmen?

Mit der Entwicklung von Cloud Computing und Containerisierungstechnologie hat sich Docker zu einer der beliebtesten Containerisierungsplattformen entwickelt. Docker Swarm kann als Dockers eigenes Container-Orchestrierungstool zum Aufbau und zur Verwaltung eines Docker-Clusters verwendet werden. In diesem Artikel untersuchen wir, wie Sie Docker Swarm für die Cluster-Packaging-Bereitstellung von PHP-Programmen verwenden, um hohe Verfügbarkeit und Lastausgleich zu erreichen.

Zunächst müssen wir sicherstellen, dass Docker und Docker Swarm korrekt installiert sind. Sie können gemäß den Anweisungen in der offiziellen Dokumentation installieren und konfigurieren.

Als nächstes erstellen wir ein einfaches PHP-Programm als Beispiel. Erstellen Sie in Ihrem Projektverzeichnis eine Datei mit dem Namen index.php und fügen Sie den folgenden Code hinzu: index.php的文件,并添加以下代码:

<?php
echo "Hello, Docker Swarm!";
?>
Nach dem Login kopieren

现在,我们需要创建一个Dockerfile,用于构建我们的Docker镜像。在项目目录下创建一个名为Dockerfile的文件,并添加以下内容:

FROM php:7.4-apache

COPY . /var/www/html

EXPOSE 80
Nach dem Login kopieren

上述Dockerfile的内容意味着我们将使用PHP的官方镜像,并将代码复制到镜像的/var/www/html目录下。然后,我们将对外开放80端口。

接下来,我们需要构建镜像。在项目目录下打开终端,运行以下命令:

docker build -t my-php-app .
Nach dem Login kopieren

该命令将会在当前目录下构建一个名为my-php-app的镜像。

现在,我们可以使用Docker Swarm来创建一个集群了。首先,我们需要初始化Swarm。在终端中运行以下命令:

docker swarm init
Nach dem Login kopieren

成功初始化Swarm之后,我们可以使用以下命令来创建一个服务:

docker service create --name my-php-service -p 80:80 my-php-app
Nach dem Login kopieren

上述命令创建了一个名为my-php-service的服务,并将容器的80端口映射到主机的80端口。

现在,我们可以在浏览器中访问http://localhost,应该能够看到输出Hello, Docker Swarm!

docker service scale my-php-service=3
Nach dem Login kopieren

Jetzt müssen wir eine Docker-Datei zum Erstellen unseres Docker-Images erstellen. Erstellen Sie eine Datei mit dem Namen Dockerfile im Projektverzeichnis und fügen Sie den folgenden Inhalt hinzu:

docker service ls
Nach dem Login kopieren

Der Inhalt der obigen Dockerfile bedeutet, dass wir das offizielle Image von PHP verwenden und dies tun werden Kopieren Sie den Code in das Verzeichnis /var/www/html des Bildes. Dann werden wir Port 80 für die Außenwelt öffnen.

Als nächstes müssen wir das Image erstellen. Öffnen Sie das Terminal im Projektverzeichnis und führen Sie den folgenden Befehl aus:

docker service update --image my-php-app my-php-service
Nach dem Login kopieren

Dieser Befehl erstellt ein Image mit dem Namen my-php-app im aktuellen Verzeichnis.

Jetzt können wir Docker Swarm verwenden, um einen Cluster zu erstellen. Zuerst müssen wir Swarm initialisieren. Führen Sie den folgenden Befehl im Terminal aus:

docker service rm my-php-service
docker swarm leave --force
Nach dem Login kopieren
Nach der erfolgreichen Initialisierung von Swarm können wir den folgenden Befehl verwenden, um einen Dienst zu erstellen:

rrreee

Der obige Befehl erstellt einen Dienst mit dem Namen my-php-service, Und ordnen Sie Port 80 des Containers Port 80 des Hosts zu.

Jetzt können wir im Browser auf http://localhost zugreifen und sollten die Ausgabe Hello, Docker Swarm! sehen können. Dies zeigt an, dass unser PHP-Programm erfolgreich im Cluster bereitgestellt wurde.

Als nächstes können wir die Anzahl der Container erhöhen, indem wir den Service skalieren. Führen Sie beispielsweise den folgenden Befehl aus, um die Anzahl der Container auf 3 zu erweitern: 🎜rrreee🎜Jetzt können wir den folgenden Befehl verwenden, um alle laufenden Dienste und entsprechenden Container anzuzeigen: 🎜rrreee🎜Dieser Befehl zeigt die Liste der Dienste an, die im ausgeführt werden aktueller Cluster. 🎜🎜Wenn wir unsere Anwendung aktualisieren möchten, ändern Sie einfach den lokalen Code und erstellen Sie das Image neu. Verwenden Sie dann den folgenden Befehl, um den Dienst zu aktualisieren: 🎜rrreee🎜Wenn wir schließlich den Dienst und den Cluster entfernen möchten, können wir Folgendes ausführen Befehl: 🎜rrreee🎜Zusammenfassung: 🎜🎜In diesem Artikel haben wir gelernt, wie man Docker Swarm für die Cluster-Paketierung und Bereitstellung von PHP-Programmen verwendet. Wir haben ein einfaches PHP-Programm erstellt und mit Docker ein Image erstellt. Anschließend haben wir Docker Swarm verwendet, um einen Cluster zu initialisieren, einen Dienst zu erstellen und den Dienst zu erweitern, um die Anzahl der Container zu erhöhen. Schließlich haben wir auch gelernt, wie man Dienste aktualisiert und Cluster entfernt. 🎜🎜Ich hoffe, dass dieser Artikel Ihnen hilft, Docker Swarm für die Paketierung und Bereitstellung von PHP-Programmclustern zu verstehen und zu verwenden. Ich wünsche Ihnen viel Erfolg mit Docker Swarm! 🎜

Das obige ist der detaillierte Inhalt vonWie verwende ich Docker Swarm für die Cluster-Paketierung und Bereitstellung von PHP-Programmen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage