blob: ae42ce35dc0732a06b3140061a73942f0e40cc7a [file] [log] [blame]
---
apiVersion: v1
kind: Service
metadata:
name: foswiki
namespace: mulk
labels:
name: foswiki
k8s-app: foswiki
spec:
selector:
name: foswiki
type: ClusterIP
ports:
- name: http
port: 80
targetPort: http
protocol: TCP
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: foswiki
namespace: mulk
labels:
name: foswiki
k8s-app: foswiki
annotations:
ingress.kubernetes.io/ssl-proxy-headers: X-Forwarded-Proto:https
ingress.kubernetes.io/custom-request-headers: X-Forwarded-Proto:https||X-Forwarded-Port:443
kubernetes.io/ingress.class: nginx
cert-manager.io/cluster-issuer: letsencrypt-prod
spec:
rules:
- host: foswiki.benkard.de
http:
paths:
- path: /
pathType: ImplementationSpecific
backend:
service:
name: foswiki
port:
name: http
tls:
- hosts:
- foswiki.benkard.de
secretName: foswiki-tls
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: foswiki
namespace: mulk
labels:
name: foswiki
k8s-app: foswiki
spec:
replicas: 1
strategy:
type: Recreate
selector:
matchLabels:
k8s-app: foswiki
name: foswiki
template:
metadata:
labels:
name: foswiki
k8s-app: foswiki
spec:
imagePullSecrets:
- name: portus-token
volumes:
- name: data
persistentVolumeClaim:
claimName: foswiki-data
containers:
- name: master
image: docker.benkard.de/mulk/foswiki:1.29-1
imagePullPolicy: IfNotPresent
resources:
limits:
cpu: 2000m
memory: 2000Mi
requests:
cpu: 10m
memory: 300Mi
volumeMounts:
- name: data
mountPath: /var/www/foswiki
ports:
- containerPort: 80
name: http
protocol: TCP
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: foswiki-data
namespace: mulk
labels:
name: foswiki-data
k8s-app: foswiki
annotations:
volume.beta.kubernetes.io/storage-provisioner: rancher.io/local-path
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 50Gi
storageClassName: local-path
---