Added kubernetes deployment

This commit is contained in:
2024-03-25 09:09:51 +01:00
parent ef360b2e89
commit 63209d5352
8 changed files with 86 additions and 54 deletions

14
kube/certs.yaml Normal file
View File

@@ -0,0 +1,14 @@
---
apiVersion: cert-manager.io/v1
kind: Certificate
metadata:
name: kubecon24.nicolai-ort.com-cert
namespace: nicolai-ort
spec:
commonName: kubecon24.nicolai-ort.com
secretName: kubecon24.nicolai-ort.com-cert
dnsNames:
- kubecon24.nicolai-ort.com
issuerRef:
name: letsencrypt-prod
kind: ClusterIssuer

33
kube/deployment.yaml Normal file
View File

@@ -0,0 +1,33 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: kubecon24
namespace: nicolai-ort
labels:
app: kubecon24
spec:
replicas: 1
revisionHistoryLimit: 10
strategy:
type: RollingUpdate
rollingUpdate:
maxUnavailable: 0
maxSurge: 1
selector:
matchLabels:
app: kubecon24
template:
metadata:
labels:
app: kubecon24
spec:
containers:
- name: kubecon24
image: registry.odit.services/niggl/kubecon24:latest
imagePullPolicy: Always
ports:
- containerPort: 80
name: web
imagePullSecrets:
- name: registry-odit-services
restartPolicy: Always

17
kube/ingress.yaml Normal file
View File

@@ -0,0 +1,17 @@
---
apiVersion: traefik.io/v1alpha1
kind: IngressRoute
metadata:
name: kubecon24.nicolai-ort.com
namespace: nicolai-ort
spec:
entryPoints:
- websecure
routes:
- match: Host(`kubecon24.nicolai-ort.com`)
kind: Rule
services:
- name: kubecon24
port: 80
tls:
secretName: kubecon24.nicolai-ort.com-cert

14
kube/service.yaml Normal file
View File

@@ -0,0 +1,14 @@
---
apiVersion: v1
kind: Service
metadata:
name: kubecon24
namespace: nicolai-ort
labels:
app: kubecon24
spec:
ports:
- port: 80
selector:
app: kubecon24
type: ClusterIP