Files
momme-world/k8s/deployment.yaml
T
momme 9f923b4f35 momme.world: terminal-style personal site, nginx + ConfigMap deploy
Static site (no build step) with a browser terminal, plain-text output
for curl, and plain k8s manifests under k8s/ for ArgoCD.
2026-10-14 00:14:29 +02:00

75 lines
1.8 KiB
YAML

apiVersion: apps/v1
kind: Deployment
metadata:
name: momme-world
labels:
app: momme-world
spec:
replicas: 1
strategy:
type: RollingUpdate
rollingUpdate:
maxSurge: 1
maxUnavailable: 0
selector:
matchLabels:
app: momme-world
template:
metadata:
labels:
app: momme-world
spec:
securityContext:
runAsNonRoot: true
runAsUser: 101
fsGroup: 101
seccompProfile:
type: RuntimeDefault
containers:
- name: nginx
image: docker.io/nginxinc/nginx-unprivileged:1.31.6-alpine@sha256:884e0b7f42f303641b0f4e78755aea647521dca0b89ca3be7992ad78b5c07434
ports:
- name: http
containerPort: 8080
volumeMounts:
- name: site
mountPath: /var/www/html
readOnly: true
- name: config
mountPath: /etc/nginx/conf.d/default.conf
subPath: nginx.conf
readOnly: true
- name: tmp
mountPath: /tmp
readinessProbe:
httpGet:
path: /hello.txt
port: http
periodSeconds: 10
livenessProbe:
httpGet:
path: /hello.txt
port: http
initialDelaySeconds: 5
periodSeconds: 20
resources:
requests:
cpu: 10m
memory: 32Mi
limits:
memory: 64Mi
securityContext:
allowPrivilegeEscalation: false
readOnlyRootFilesystem: true
capabilities:
drop: ["ALL"]
volumes:
- name: site
configMap:
name: site
- name: config
configMap:
name: config
- name: tmp
emptyDir: {}