# Copyright 2016 The Kubernetes Authors All rights reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. --- apiVersion: apps/v1 kind: Deployment metadata: name: hello-world-app namespace: default spec: selector: matchLabels: app: hello-world-app template: metadata: labels: app: hello-world-app spec: containers: - name: hello-world-app image: docker.io/kicbase/echo-server:1.0 ports: - containerPort: 8080 --- apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: example-ingress namespace: kube-system spec: ingressClassName: nginx rules: - host: hello-john.test http: paths: - path: / pathType: Prefix backend: service: name: hello-world-app port: number: 80 - host: hello-jane.test http: paths: - path: / pathType: Prefix backend: service: name: hello-world-app port: number: 80 --- apiVersion: v1 kind: Service metadata: name: hello-world-app namespace: kube-system spec: type: ExternalName externalName: hello-world-app.default.svc.cluster.local --- apiVersion: v1 kind: Service metadata: name: hello-world-app namespace: default spec: ports: - name: http port: 80 targetPort: 8080 protocol: TCP type: NodePort selector: app: hello-world-app