86 lines
2.1 KiB
YAML
86 lines
2.1 KiB
YAML
# Copyright 2021 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: gcr.io/google-samples/hello-app:1.0
|
|
ports:
|
|
- containerPort: 8080
|
|
---
|
|
apiVersion: networking.k8s.io/v1beta1
|
|
kind: Ingress
|
|
metadata:
|
|
name: example-ingress
|
|
namespace: kube-system
|
|
annotations:
|
|
# needed for k8s < v1.18: https://kubernetes.io/blog/2020/04/02/improvements-to-the-ingress-api-in-kubernetes-1.18/#deprecating-the-ingress-class-annotation
|
|
kubernetes.io/ingress.class: nginx
|
|
spec:
|
|
rules:
|
|
- host: hello-john.test
|
|
http:
|
|
paths:
|
|
- path: /
|
|
pathType: Prefix
|
|
backend:
|
|
serviceName: hello-world-app
|
|
servicePort: 80
|
|
- host: hello-jane.test
|
|
http:
|
|
paths:
|
|
- path: /
|
|
pathType: Prefix
|
|
backend:
|
|
serviceName: hello-world-app
|
|
servicePort: 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
|