infrastructure/kustomization/bases/nocodelytics-dashboard.yaml

88 lines
1.9 KiB
YAML

apiVersion: apps/v1
kind: Deployment
metadata:
name: nocodelytics-dashboard
spec:
replicas: 2
strategy:
type: RollingUpdate
rollingUpdate:
maxSurge: 1
maxUnavailable: 0
selector:
matchLabels:
ms: nocodelytics-dashboard
template:
metadata:
labels:
ms: nocodelytics-dashboard
spec:
containers:
- name: nocodelytics-dashboard
imagePullPolicy: Always
image: container-registry.nocodelytics.com/nocodelytics:latest
readinessProbe:
tcpSocket:
port: 8080
initialDelaySeconds: 5
periodSeconds: 10
livenessProbe:
tcpSocket:
port: 8080
initialDelaySeconds: 10
failureThreshold: 5
periodSeconds: 10
terminationGracePeriodSeconds: 60
env:
- name: PORT
value: "8080"
envFrom:
- secretRef:
name: secrets
---
apiVersion: v1
kind: Service
metadata:
name: nocodelytics-dashboard
spec:
type: ClusterIP
selector:
ms: nocodelytics-dashboard
ports:
- port: 8080
targetPort: 8080
---
apiVersion: traefik.containo.us/v1alpha1
kind: IngressRoute
metadata:
name: nocodelytics-dashboard
spec:
entryPoints:
- websecure
routes:
- match: Host(`default.nocodelytics.com`)
kind: Rule
services:
- name: nocodelytics-dashboard
port: 8080
tls:
certResolver: letsencrypt
domains:
- main: default.nocodelytics.com
---
apiVersion: v1
kind: Pod
metadata:
name: nocodelytics-debug
spec:
containers:
- name: nocodelytics-debug
image: container-registry.nocodelytics.com/nocodelytics:latest
command: ["/bin/sh"]
args: ["-c", "while true; do sleep 30; done;"]
envFrom:
- secretRef:
name: secrets
---