Schreibe eine k8s-Deployment-Datei, die eine Nginx-Instanz mit zwei Replikaten erstellt. Anschließend wird das Deployment über einen NodePort-Typ-Service auf Port 30080 freigegeben.
Hier ist eine Beispiels-Kubernetes-Deployment-YAML-Datei, die eine Nginx-Instanz mit zwei Replikaten erstellt und das Deployment über einen NodePort-Typ-Service auf Port 30080 freigibt:

apiVersion: apps/v1
kind: Deployment
metadata:
  name: nginx-deployment
spec:
  replicas: 2
  selector:
    matchLabels:
      app: nginx
  template:
    metadata:
      labels:
        app: nginx
    spec:
      containers:
      - name: nginx
        image: nginx
        ports:
        - containerPort: 80
---
apiVersion: v1
kind: Service
metadata:
  name: nginx-service
spec:
  type: NodePort
  selector:
    app: nginx
  ports:
  - name: http
    port: 80
    targetPort: 80
    nodePort: 30080

In dieser YAML-Datei definieren wir zunächst ein Deployment mit dem Namen nginx-deployment, das zwei Replikate eines Nginx-Containers erstellt. Das Selector-Feld in der Deployment-Spezifikation entspricht den Labels app: nginx im Pod-Template. Das Template-Feld definiert das Pod-Template, das den Nginx-Container mit einem Container-Port von 80 spezifiziert.

Als nächstes definieren wir einen NodePort-Typ-Service mit dem Namen nginx-service, der das Nginx-Deployment auf Port 30080 freigibt. Das Selector-Feld in der Service-Spezifikation entspricht den Labels app: nginx im Pod-Template. Das Ports-Feld spezifiziert die Portzuordnungen für den Service, einschließlich des Zielports 80 für den Nginx-Container und des Node-Ports 30080, über den der Service von außerhalb des Clusters erreicht werden kann.