all repos — infra @ b9176c546133143fdce23d8a95a20276c85bdb81

infrastructure manifests and setup notes

apps/honk/honk.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
 80
 81
 82
 83
 84
 85
apiVersion: apps/v1
kind: Deployment
metadata:
  name: honk
  labels:
    app: honk
spec:
  selector:
    matchLabels:
      app: honk
  template:
    metadata:
      labels:
        app: honk
    spec:
      securityContext:
        runAsUser: 1000
        runAsGroup: 3000
        fsGroup: 2000
      containers:
        - name: honk
          image: sini:5000/honk:latest
          volumeMounts:
            - name: data
              mountPath: /data
              readOnly: false
            - name: certs
              mountPath: /etc/ssl/certs
              readOnly: true
          ports:
            - name: http
              containerPort: 8080
          args:
            - -datadir
            - /data
      volumes:
        - name: data
          persistentVolumeClaim:
            claimName: honk-data
        - name: certs
          hostPath:
            path: /etc/ssl/certs
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: honk-data
spec:
  storageClassName: local-path
  accessModes:
    - ReadWriteOnce
  resources:
    requests:
      storage: 5Gi
---
apiVersion: v1
kind: Service
metadata:
  name: honk
spec:
  selector:
    app: honk
  ports:
    - name: honk-http
      port: 8080
      targetPort: 8080
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: h.icyphox.sh
  namespace: default
spec:
  ingressClassName: caddy
  rules:
  - host: h.icyphox.sh
    http:
      paths:
      - path: /
        pathType: Prefix
        backend:
          service:
            name: honk
            port:
              number: 8080