all repos — infra @ 2c2f4a9c4ea30de96f40d8cd804201ede5015088

infrastructure manifests and setup notes

apps/radicale/radicale.yaml (view raw)

 1
 2
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
apiVersion: apps/v1
kind: Deployment
metadata:
  name: radicale
  labels:
    app: radicale
spec:
  selector:
    matchLabels:
      app: radicale
  template:
    metadata:
      labels:
        app: radicale
    spec:
      nodeSelector:
        kubernetes.io/hostname: sini
      containers:
        - name: radicale
          image: tomsquest/docker-radicale
          imagePullPolicy: IfNotPresent
          volumeMounts:
            - name: collections
              mountPath: /data/collections
          ports:
            - name: http
              containerPort: 5232
      volumes:
        - name: collections
          persistentVolumeClaim:
            claimName: radicale-collections
---
apiVersion: v1
kind: Service
metadata:
  name: radicale
spec:
  selector:
    app: radicale
  ports:
    - name: http
      port: 80
      targetPort: 5232
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: radicale-collections
spec:
  storageClassName: local-path
  accessModes:
    - ReadWriteOnce
  resources:
    requests:
      storage: 100Mi
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: dav.koti.lan
  namespace: default
spec:
  ingressClassName: caddy
  rules:
  - host: dav.koti.lan
    http:
      paths:
      - path: /
        pathType: Prefix
        backend:
          service:
            name: radicale
            port:
              number: 80
  tls:
    - secretName: koti-lan-tls
      hosts:
        - dav.koti.lan