apiVersion: v1 kind: Service metadata: name: nginx labels: app.kubernetes.io/name: ingress-nginx app.kubernetes.io/part-of: ingress-nginx spec: ports: - port: 80 targetPort: 80 protocol: TCP name: http selector: app.kubernetes.io/name: ingress-nginx app.kubernetes.io/part-of: ingress-nginx --- apiVersion: v1 kind: ReplicationController metadata: name: nginx labels: app.kubernetes.io/name: ingress-nginx app.kubernetes.io/part-of: ingress-nginx spec: replicas: 1 template: metadata: labels: app.kubernetes.io/name: ingress-nginx app.kubernetes.io/part-of: ingress-nginx spec: containers: - name: nginx image: gcr.io/google_containers/nginx ports: - containerPort: 80 --- apiVersion: v1 kind: Service metadata: name: http-svc labels: app.kubernetes.io/name: http-svc app.kubernetes.io/part-of: ingress-nginx spec: ports: - port: 80 targetPort: 8080 protocol: TCP name: http selector: app.kubernetes.io/name: http-svc app.kubernetes.io/part-of: ingress-nginx --- apiVersion: v1 kind: ReplicationController metadata: name: http-svc labels: app.kubernetes.io/name: http-svc app.kubernetes.io/part-of: ingress-nginx spec: replicas: 1 template: metadata: labels: app.kubernetes.io/name: http-svc app.kubernetes.io/part-of: ingress-nginx spec: containers: - name: http-svc image: registry.k8s.io/e2e-test-images/echoserver:2.3 ports: - containerPort: 8080 env: - name: NODE_NAME valueFrom: fieldRef: fieldPath: spec.nodeName - name: POD_NAME valueFrom: fieldRef: fieldPath: metadata.name - name: POD_NAMESPACE valueFrom: fieldRef: fieldPath: metadata.namespace - name: POD_IP valueFrom: fieldRef: fieldPath: status.podIP --- apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: foo-tls namespace: default spec: ingressClassName: nginx tls: - hosts: - foo.bar.com # This secret must exist beforehand # The cert must also contain the subj-name foo.bar.com # https://github.com/kubernetes/ingress-nginx/blob/main/docs/examples/PREREQUISITES.md#tls-certificates secretName: foobar - hosts: - bar.baz.com # This secret must exist beforehand # The cert must also contain the subj-name bar.baz.com # https://github.com/kubernetes/ingress-nginx/blob/main/docs/examples/PREREQUISITES.md#tls-certificates secretName: barbaz rules: - host: foo.bar.com http: paths: - path: / pathType: Prefix backend: service: name: http-svc port: number: 80 - host: bar.baz.com http: paths: - path: / pathType: Prefix backend: service: name: nginx port: number: 80