Rumah > pembangunan bahagian belakang > tutorial php > Bagaimana untuk menggunakan Kubernetes untuk pembungkusan kontena dan penggunaan program PHP?

Bagaimana untuk menggunakan Kubernetes untuk pembungkusan kontena dan penggunaan program PHP?

WBOY
Lepaskan: 2023-07-31 12:30:01
asal
1691 orang telah melayarinya

Bagaimana untuk menggunakan Kubernetes untuk pembungkusan kontena dan penggunaan program PHP?

Kubernetes ialah enjin orkestrasi kontena sumber terbuka yang boleh mengautomasikan penggunaan, pengembangan dan pengurusan kontena. Ia menyediakan keupayaan orkestrasi kontena yang baik, menjadikannya lebih mudah untuk membina dan menggunakan aplikasi. Artikel ini akan memperkenalkan cara menggunakan Kubernetes untuk pembungkusan kontena dan penggunaan program PHP serta memberikan contoh kod yang sepadan.

1. Persediaan

  1. Pasang Docker: Sebelum anda mula, anda perlu memasang Docker. Docker ialah platform kontena yang popular, dan kami akan menggunakan Docker untuk membina dan membungkus imej aplikasi kami. Anda boleh memilih kaedah pemasangan yang sesuai mengikut sistem pengendalian.
  2. Pasang Kubernetes: Seterusnya, anda perlu memasang gugusan Kubernetes. Kubernetes menyediakan rangka kerja pengurusan kluster yang boleh digunakan untuk menggunakan dan mengurus aplikasi kontena. Pegawai tersebut menyediakan beberapa alat pemasangan, seperti kubeadm, Minikube, dsb. Anda boleh memilih kaedah yang sesuai untuk pemasangan mengikut keperluan sebenar.

2. Bina imej Docker
Sebelum membina imej Docker, anda perlu menulis fail Docker terlebih dahulu. Fail Docker ialah skrip yang digunakan untuk membina imej Docker, yang mengandungi pelbagai arahan yang diperlukan untuk membina dan menjalankan imej. Berikut ialah contoh fail Docker yang mudah:

FROM php:7.4-apache

COPY . /var/www/html

RUN chown -R www-data:www-data /var/www/html
Salin selepas log masuk

Fail Docker di atas menggunakan imej PHP 7.4-apache yang disediakan secara rasmi sebagai imej asas, menyalin semua fail dalam direktori semasa ke direktori /var/www/html bekas dan set ia sewajarnya kebenaran.

Selepas menyimpan Dockerfile, laksanakan arahan berikut untuk membina imej Docker:

docker build -t my-php-app:v1 .
Salin selepas log masuk

Antaranya, parameter -t digunakan untuk menentukan nama dan label imej. Selepas pelaksanaan, anda boleh menggunakan arahan berikut untuk melihat imej terbina:

docker images
Salin selepas log masuk

3. Buat Deployment Kubernetes
Dalam Kubernetes, gunakan Deployment untuk mentakrif dan mengurus set replika aplikasi. Berikut ialah contoh Deployment yang mudah:

apiVersion: apps/v1
kind: Deployment
metadata:
  name: my-php-app
spec:
  replicas: 3
  selector:
    matchLabels:
      app: my-php-app
  template:
    metadata:
      labels:
        app: my-php-app
    spec:
      containers:
      - name: my-php-app
        image: my-php-app:v1
        ports:
        - containerPort: 80
Salin selepas log masuk

Deployment di atas mentakrifkan aplikasi kontena yang dipanggil my-php-app dengan 3 replika. Ia menggunakan imej my-php-app:v1 yang kami bina dalam langkah sebelumnya dan memetakan port kontena 80 ke port 80 hos.

Selepas menyimpan fail definisi Deployment, laksanakan arahan berikut untuk mencipta Deployment:

kubectl apply -f my-php-app-deployment.yaml
Salin selepas log masuk

Anda boleh menggunakan arahan berikut untuk melihat Deployment yang dibuat:

kubectl get deployments
Salin selepas log masuk

4 Cipta Perkhidmatan Kubernetes
Kubernetes Perkhidmatan digunakan untuk mendedahkan Perkhidmatan port aplikasi, supaya permintaan Luaran boleh mengakses aplikasi. Berikut ialah contoh Perkhidmatan ringkas:

apiVersion: v1
kind: Service
metadata:
  name: my-php-app-service
spec:
  selector:
    app: my-php-app
  ports:
    - protocol: TCP
      port: 80
      targetPort: 80
  type: LoadBalancer
Salin selepas log masuk

Perkhidmatan di atas mentakrifkan perkhidmatan bernama my-php-app-service, yang memilih Deployment yang dikaitkan dengannya melalui pemilih. Majukan permintaan daripada port 80 hos ke port 80 bekas, dan nyatakan jenis Perkhidmatan sebagai LoadBalancer.

Selepas menyimpan fail definisi Perkhidmatan, laksanakan arahan berikut untuk mencipta Perkhidmatan:

kubectl apply -f my-php-app-service.yaml
Salin selepas log masuk

Anda boleh menggunakan arahan berikut untuk melihat Perkhidmatan yang dibuat:

kubectl get services
Salin selepas log masuk

5. Akses aplikasi
Selepas melaksanakan langkah di atas, Kubernetes akan menggunakan dan Mengurus aplikasi PHP kami secara automatik. Anda boleh menggunakan arahan berikut untuk melihat Pod yang dibuat:

kubectl get pods
Salin selepas log masuk

Cari nama salah satu Pod, anda boleh menggunakan arahan berikut untuk melihat log Pod:

kubectl logs <pod名称>
Salin selepas log masuk

Anda boleh menggunakan arahan berikut untuk mendapatkan akses luaran alamat Perkhidmatan:

minikube service my-php-app-service --url
Salin selepas log masuk

Salin alamat output dan bukanya dalam penyemak imbas untuk mengakses aplikasi PHP kami.

6. Ringkasan
Artikel ini memperkenalkan cara menggunakan Kubernetes untuk pembungkusan bekas dan penggunaan program PHP. Dengan membina imej Docker dan mencipta Deployments dan Perkhidmatan Kubernetes, kami boleh menggunakan dan mengurus aplikasi PHP kami dengan mudah. Dalam penggunaan sebenar, konfigurasi dan pengoptimuman selanjutnya boleh dilakukan mengikut keperluan untuk memenuhi keperluan sebenar.

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

sumber:php.cn
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan