Files
automation/kubernetes-templates/drawio.yml
T

73 lines
1.4 KiB
YAML

---
apiVersion: v1
kind: Namespace
metadata:
name: drawio
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: drawio
namespace: drawio
spec:
replicas: 1
selector:
matchLabels:
app: drawio
template:
metadata:
labels:
app: drawio
spec:
affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchExpressions:
- key: node-role.kubernetes.io/control-plane
operator: DoesNotExist
containers:
- name: drawio
image: jgraph/drawio:latest
ports:
- containerPort: 8080
env:
- name: DRAWIO_SELF_CONTAINED
value: "1"
resources:
requests:
memory: "128Mi"
cpu: "100m"
limits:
memory: "256Mi"
cpu: "200m"
---
apiVersion: v1
kind: Service
metadata:
name: drawio-service
namespace: drawio
spec:
type: ClusterIP
selector:
app: drawio
ports:
- name: http
protocol: TCP
port: 80
targetPort: 8080
---
apiVersion: traefik.io/v1alpha1
kind: IngressRoute
metadata:
name: drawio-web
namespace: drawio
spec:
entryPoints:
- websecure
routes:
- match: Host(`drawio.khongisa.co.za`)
kind: Rule
services:
- name: drawio-service
port: 80