2.3 KiB · text History 0ff0d66
apiVersion: v1
kind: Namespace
metadata:
  name: diogramos
---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: diogramos
  namespace: diogramos
  labels:
    name: diogramos
    keel.sh/policy: force
    keel.sh/trigger: poll
spec:
  replicas: 2
  selector:
    matchLabels:
      name: diogramos
  strategy:
    type: RollingUpdate
    rollingUpdate:
      maxSurge: 1
      maxUnavailable: 0
  template:
    metadata:
      labels:
        name: diogramos
    spec:
      containers:
        - image: r.g.gmp.io/diogramos/diogramos:latest
          imagePullPolicy: Always
          name: diogramos
          ports:
            - containerPort: 4000
          env:
            - name: PHX_HOST
              value: diogramos.gmp.io
            - name: PORT
              value: "4000"
            - name: PHX_SERVER
              value: "true"
            - name: SECRET_KEY_BASE
              valueFrom:
                secretKeyRef:
                  name: elixir-args
                  key: secret_key_base
            - name: DATABASE_URL
              valueFrom:
                secretKeyRef:
                  name: elixir-args
                  key: database_url
            - name: POOL_SIZE
              value: "10"
          readinessProbe:
            httpGet:
              path: /
              port: 4000
            initialDelaySeconds: 5
            periodSeconds: 10
          livenessProbe:
            httpGet:
              path: /
              port: 4000
            initialDelaySeconds: 30
            periodSeconds: 30
      imagePullSecrets:
        - name: gitlabgmp
---
apiVersion: v1
kind: Service
metadata:
  name: diogramos-svc
  namespace: diogramos
spec:
  ports:
    - port: 80
      targetPort: 4000
      protocol: TCP
  selector:
    name: diogramos
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: diogramos-ingress
  namespace: diogramos
  annotations:
    cert-manager.io/cluster-issuer: letsencrypt-prod
    kubernetes.io/ingress.class: "traefik"
spec:
  tls:
    - hosts:
        - diogramos.gmp.io
      secretName: diogramos-tls
  rules:
    - host: diogramos.gmp.io
      http:
        paths:
          - path: /
            pathType: Prefix
            backend:
              service:
                name: diogramos-svc
                port:
                  number: 80