kubernetes-bootstrapping/04-ingress-controller-nginx/README.md

79 lines
1.6 KiB
Markdown
Raw Normal View History

2023-12-23 05:47:02 +00:00
# 04 | Ingress Controller = NGINX
2023-12-23 02:54:51 +00:00
2023-12-23 05:24:31 +00:00
[https://kubernetes.github.io/ingress-nginx/](https://kubernetes.github.io/ingress-nginx/)
[https://github.com/kubernetes/ingress-nginx](https://github.com/kubernetes/ingress-nginx)
2023-12-23 02:54:51 +00:00
```bash
helm upgrade --install ingress-nginx ingress-nginx --repo https://kubernetes.github.io/ingress-nginx --namespace ingress-nginx --create-namespace -f values.yaml
```
Example usage:
```yaml
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: ingress-mandelmapper
spec:
ingressClassName: nginx
rules:
- host: mandelmap.home.stevenpolley.net
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: mandelmapper
port:
number: 6161
apiVersion: networking.k8s.io/v1
2023-12-23 02:54:51 +00:00
kind: Ingress
metadata:
name: ingress-myservicea
spec:
ingressClassName: nginx
rules:
- host: myservicea.foo.org
http:
paths:
- path: /
backend:
service:
name: myservicea
port:
number: 8080
2023-12-23 02:54:51 +00:00
---
apiVersion: networking.k8s.io/v1
2023-12-23 02:54:51 +00:00
kind: Ingress
metadata:
name: ingress-myserviceb
spec:
ingressClassName: nginx
rules:
- host: myserviceb.foo.org
http:
paths:
- path: /
backend:
service:
name: myserviceb
port:
number: 8443
2023-12-23 02:54:51 +00:00
tls:
- hosts:
- myserviceb.foo.org
secretName: example-tls
---
# A secret must also be provided, likely by a cert-manager of some kind
apiVersion: v1
kind: Secret
metadata:
name: example-tls
data:
tls.crt: <base64 encoded cert>
tls.key: <base64 encoded key>
type: kubernetes.io/tls
```