takahe-deployment-examples/kubernetes/webserver.yaml

98 wiersze
1.9 KiB
YAML

apiVersion: apps/v1
kind: Deployment
metadata:
name: webserver
spec:
selector:
matchLabels:
run: webserver
replicas: 2
template:
metadata:
labels:
run: webserver
spec:
containers:
- name: webserver
image: jointakahe/takahe:0.5
args:
- "gunicorn"
- "takahe.wsgi:application"
- "-w"
- "6"
- "-b"
- "0.0.0.0:8000"
ports:
- containerPort: 8000
envFrom:
- configMapRef:
name: takahe-config
- secretRef:
name: takahe-secrets
resources:
requests:
memory: "1024Mi"
limits:
memory: "1024Mi"
livenessProbe:
httpGet:
path: /
port: 8000
periodSeconds: 5
readinessProbe:
httpGet:
path: /
port: 8000
initialDelaySeconds: 5
periodSeconds: 5
startupProbe:
httpGet:
path: /
port: 8000
initialDelaySeconds: 2
failureThreshold: 30
periodSeconds: 2
---
apiVersion: v1
kind: Service
metadata:
name: webserver
labels:
run: webserver
spec:
ports:
- port: 80
targetPort: 8000
name: web
selector:
run: webserver
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: webserver
spec:
rules:
- host: example.com
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: webserver
port:
name: web
- host: "*.example.com"
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: webserver
port:
name: web