Rumah >pembangunan bahagian belakang >tutorial php >Bagaimana untuk menggunakan Docker Swarm untuk pembungkusan kluster dan penggunaan program PHP?

Bagaimana untuk menggunakan Docker Swarm untuk pembungkusan kluster dan penggunaan program PHP?

PHPz
PHPzasal
2023-07-29 23:53:181454semak imbas

Bagaimana untuk menggunakan Docker Swarm untuk pembungkusan kluster dan penggunaan program PHP?

Dengan pembangunan pengkomputeran awan dan teknologi kontena, Docker telah menjadi salah satu platform kontena paling popular. Docker Swarm ialah alat orkestrasi kontena Docker sendiri dan boleh digunakan untuk membina dan mengurus kluster Docker. Dalam artikel ini, kami akan meneroka cara menggunakan Docker Swarm untuk penggunaan pembungkusan kluster program PHP untuk mencapai ketersediaan tinggi dan pengimbangan beban.

Pertama, kita perlu memastikan Docker dan Docker Swarm dipasang dengan betul. Anda boleh memasang dan mengkonfigurasi mengikut arahan dalam dokumentasi rasmi.

Seterusnya, kami mencipta program PHP mudah sebagai contoh. Dalam direktori projek anda, cipta fail bernama index.php dan tambahkan kod berikut: index.php的文件,并添加以下代码:

<?php
echo "Hello, Docker Swarm!";
?>

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

FROM php:7.4-apache

COPY . /var/www/html

EXPOSE 80

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

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

docker build -t my-php-app .

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

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

docker swarm init

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

docker service create --name my-php-service -p 80:80 my-php-app

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

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

docker service scale my-php-service=3

Sekarang, kita perlu mencipta Dockerfile untuk membina imej Docker Kami. Cipta fail bernama Dockerfile dalam direktori projek dan tambah kandungan berikut:

docker service ls

Kandungan Dockerfile di atas bermakna kami akan menggunakan imej rasmi PHP dan akan Salin kod ke direktori /var/www/html imej. Kemudian, kami akan membuka port 80 ke dunia luar.

Seterusnya, kita perlu membina imej. Buka terminal dalam direktori projek dan jalankan arahan berikut:

docker service update --image my-php-app my-php-service

Arahan ini akan membina imej bernama my-php-app dalam direktori semasa.

Kini, kita boleh menggunakan Docker Swarm untuk mencipta kluster. Pertama, kita perlu memulakan Swarm. Jalankan arahan berikut dalam terminal:

docker service rm my-php-service
docker swarm leave --force

Selepas berjaya memulakan Swarm, kita boleh menggunakan arahan berikut untuk mencipta perkhidmatan:

rrreee

Arahan di atas mencipta perkhidmatan bernama my-php-service, Dan petakan port 80 bekas ke port 80 hos.

Kini, kita boleh mengakses http://localhost dalam penyemak imbas dan seharusnya dapat melihat output Hello, Docker Swarm!. Ini menunjukkan bahawa program PHP kami telah berjaya digunakan dalam kelompok.

Seterusnya, kita boleh menambah bilangan kontena dengan menskalakan perkhidmatan. Sebagai contoh, jalankan arahan berikut untuk mengembangkan bilangan bekas kepada 3: 🎜rrreee🎜Sekarang, kita boleh menggunakan arahan berikut untuk melihat semua perkhidmatan yang sedang berjalan dan bekas yang sepadan: 🎜rrreee🎜Arahan ini akan memaparkan senarai perkhidmatan yang dijalankan dalam kluster semasa. 🎜🎜Jika kami ingin mengemas kini aplikasi kami, cuma ubah suai kod tempatan dan bina semula imej, kemudian gunakan arahan berikut untuk mengemas kini perkhidmatan: 🎜rrreee🎜Akhir sekali, jika kami ingin mengalih keluar perkhidmatan dan kluster, kami boleh menjalankan yang berikut arahan: 🎜rrreee🎜Ringkasan: 🎜🎜Dalam artikel ini, kami mempelajari cara menggunakan Docker Swarm untuk pembungkusan kluster dan penggunaan program PHP. Kami mencipta program PHP mudah dan membina imej menggunakan Docker. Kami kemudian menggunakan Docker Swarm untuk memulakan kluster, mencipta perkhidmatan dan mengembangkan perkhidmatan untuk menambah bilangan bekas. Akhir sekali, kami juga mempelajari cara mengemas kini perkhidmatan dan mengalih keluar kelompok. 🎜🎜Saya harap artikel ini akan membantu anda memahami dan menggunakan Docker Swarm untuk pembungkusan dan penggunaan kluster program PHP. Saya doakan anda berjaya menggunakan Docker Swarm! 🎜

Atas ialah kandungan terperinci Bagaimana untuk menggunakan Docker Swarm untuk pembungkusan kluster dan penggunaan program PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Artikel berkaitan

Lihat lagi