--- apiVersion: v1 kind: Service metadata: name: goff labels: app: goff spec: selector: app: goff type: ClusterIP ports: - port: 8080 targetPort: http protocol: TCP name: http --- apiVersion: apps/v1 kind: Deployment metadata: name: goff spec: selector: matchLabels: app: goff revisionHistoryLimit: 1 replicas: 1 template: metadata: annotations: labels: app: goff spec: containers: - name: goff image: gofeatureflag/go-feature-flag:latest command: - /go-feature-flag - --config - /goff/config.yaml volumeMounts: - name: configs mountPath: /goff/ ports: - name: http protocol: TCP containerPort: 80 resources: requests: cpu: 150m memory: 500Mi limits: cpu: 1000m memory: 2000Mi securityContext: runAsUser: 1000 startupProbe: httpGet: path: /health port: http failureThreshold: 60 periodSeconds: 10 terminationGracePeriodSeconds: 1200 volumes: - name: configs configMap: name: goff-configs --- apiVersion: networking.k8s.io/v1 kind: Ingress metadata: annotations: cert-manager.io/cluster-issuer: letsencrypt-issuer gethomepage.dev/enabled: "true" gethomepage.dev/name: "goff" gethomepage.dev/description: "GO Feature Flag" gethomepage.dev/group: "Work" nginx.ingress.kubernetes.io/proxy-body-size: "1g" nginx.ingress.kubernetes.io/proxy-read-timeout: "600" nginx.ingress.kubernetes.io/proxy-send-timeout: "600" name: goff labels: name: goff spec: rules: - host: work-goff.nc.landry.land http: paths: - backend: service: name: goff port: name: http path: / pathType: Prefix tls: - hosts: - work-goff.nc.landry.land secretName: goff-tls