Wie verwende ich Kubernetes für die Containerverpackung und Bereitstellung von PHP-Programmen?
Kubernetes ist eine Open-Source-Container-Orchestrierungs-Engine, die die Bereitstellung, Erweiterung und Verwaltung von Containern automatisieren kann. Es bietet gute Funktionen zur Container-Orchestrierung und erleichtert so die Erstellung und Bereitstellung von Anwendungen. In diesem Artikel wird die Verwendung von Kubernetes für die Containerverpackung und Bereitstellung von PHP-Programmen vorgestellt und entsprechende Codebeispiele bereitgestellt.
1. Vorbereitung
2. Erstellen Sie das Docker-Image
Bevor Sie das Docker-Image erstellen, müssen Sie zunächst eine Docker-Datei schreiben. Eine Docker-Datei ist ein Skript zum Erstellen eines Docker-Images, das verschiedene Anweisungen enthält, die zum Erstellen und Ausführen des Images erforderlich sind. Das Folgende ist ein einfaches Dockerfile-Beispiel:
FROM php:7.4-apache COPY . /var/www/html RUN chown -R www-data:www-data /var/www/html
Die obige Dockerfile verwendet das offiziell bereitgestellte PHP 7.4-Apache-Image als Basisimage, kopiert alle Dateien im aktuellen Verzeichnis in das Verzeichnis /var/www/html des Containers und legt fest es entsprechend Berechtigungen.
Führen Sie nach dem Speichern der Docker-Datei den folgenden Befehl aus, um das Docker-Image zu erstellen:
docker build -t my-php-app:v1 .
Unter anderem wird der Parameter -t verwendet, um den Namen und die Bezeichnung des Images anzugeben. Nach der Ausführung können Sie den folgenden Befehl verwenden, um das erstellte Image anzuzeigen:
docker images
3. Erstellen Sie eine Kubernetes-Bereitstellung
In Kubernetes verwenden Sie die Bereitstellung, um Replikatsätze von Anwendungen zu definieren und zu verwalten. Hier ist ein einfaches Bereitstellungsbeispiel:
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
Die obige Bereitstellung definiert eine Containeranwendung namens my-php-app mit 3 Replikaten. Es verwendet das my-php-app:v1-Image, das wir im vorherigen Schritt erstellt haben, und ordnet den Port 80 des Containers dem Port 80 des Hosts zu.
Führen Sie nach dem Speichern der Bereitstellungsdefinitionsdatei den folgenden Befehl aus, um die Bereitstellung zu erstellen:
kubectl apply -f my-php-app-deployment.yaml
Sie können den folgenden Befehl verwenden, um die erstellte Bereitstellung anzuzeigen:
kubectl get deployments
4. Einen Kubernetes-Dienst erstellen
Der Kubernetes-Dienst wird verwendet, um den bereitzustellen Port der Anwendung, sodass externe Anfragen auf die Anwendung zugreifen können. Das Folgende ist ein einfaches Dienstbeispiel:
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
Der obige Dienst definiert einen Dienst mit dem Namen my-php-app-service, der die damit verbundene Bereitstellung über einen Selektor auswählt. Leiten Sie die Anfrage von Port 80 des Hosts an Port 80 des Containers weiter und geben Sie den Diensttyp als LoadBalancer an.
Führen Sie nach dem Speichern der Dienstdefinitionsdatei den folgenden Befehl aus, um den Dienst zu erstellen:
kubectl apply -f my-php-app-service.yaml
Sie können den folgenden Befehl verwenden, um den erstellten Dienst anzuzeigen:
kubectl get services
5. Greifen Sie auf die Anwendung zu.
Nachdem Sie die oben genannten Schritte ausgeführt haben, wird Kubernetes dies tun Wir stellen unsere PHP-Anwendungen automatisch bereit und verwalten sie. Sie können den folgenden Befehl verwenden, um den erstellten Pod anzuzeigen:
kubectl get pods
Suchen Sie den Namen eines der Pods. Mit dem folgenden Befehl können Sie das Protokoll des Pods anzeigen:
kubectl logs <pod名称>
Sie können den folgenden Befehl verwenden, um den externen Zugriff zu erhalten Adresse des Dienstes:
minikube service my-php-app-service --url
Kopieren Sie die Ausgabeadresse und öffnen Sie sie in einem Browser, um auf unsere PHP-Anwendung zuzugreifen.
6. Zusammenfassung
In diesem Artikel wird die Verwendung von Kubernetes für die Containerverpackung und Bereitstellung von PHP-Programmen vorgestellt. Durch die Erstellung von Docker-Images und die Erstellung von Kubernetes-Bereitstellungen und -Diensten können wir unsere PHP-Anwendungen einfach bereitstellen und verwalten. Im tatsächlichen Einsatz können je nach Bedarf weitere Konfigurationen und Optimierungen durchgeführt werden, um den tatsächlichen Anforderungen gerecht zu werden.
Das obige ist der detaillierte Inhalt vonWie verwende ich Kubernetes für die Containerverpackung und Bereitstellung von PHP-Programmen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!