Rumah > Artikel > pembangunan bahagian belakang > Bagaimana untuk menggunakan Docker Swarm untuk pembungkusan kluster dan penggunaan program PHP?
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=3Sekarang, kita perlu mencipta
Dockerfile
untuk membina imej Docker Kami. Cipta fail bernama Dockerfile
dalam direktori projek dan tambah kandungan berikut: docker service lsKandungan
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-serviceArahan 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 --forceSelepas berjaya memulakan Swarm, kita boleh menggunakan arahan berikut untuk mencipta perkhidmatan:
rrreee
Arahan di atas mencipta perkhidmatan bernamamy-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!