postgrest.template.yml

 1---
 2kind: Service
 3apiVersion: v1
 4metadata:
 5  namespace: ${ZED_KUBE_NAMESPACE}
 6  name: postgrest
 7  annotations:
 8    service.beta.kubernetes.io/do-loadbalancer-name: "postgrest-${ZED_KUBE_NAMESPACE}"
 9    service.beta.kubernetes.io/do-loadbalancer-tls-ports: "443"
10    service.beta.kubernetes.io/do-loadbalancer-certificate-id: ${ZED_DO_CERTIFICATE_ID}
11    service.beta.kubernetes.io/do-loadbalancer-disable-lets-encrypt-dns-records: "true"
12spec:
13  type: LoadBalancer
14  selector:
15    app: postgrest
16  ports:
17    - name: web
18      protocol: TCP
19      port: 443
20      targetPort: 8080
21
22---
23apiVersion: apps/v1
24kind: Deployment
25metadata:
26  namespace: ${ZED_KUBE_NAMESPACE}
27  name: postgrest
28
29spec:
30  replicas: 1
31  selector:
32    matchLabels:
33      app: postgrest
34  template:
35    metadata:
36      labels:
37        app: postgrest
38    spec:
39      containers:
40        - name: postgrest
41          image: "postgrest/postgrest"
42          ports:
43            - containerPort: 8080
44              protocol: TCP
45          env:
46            - name: PGRST_SERVER_PORT
47              value: "8080"
48            - name: PGRST_DB_URI
49              valueFrom:
50                secretKeyRef:
51                  name: database
52                  key: url
53            - name: PGRST_JWT_SECRET
54              valueFrom:
55                secretKeyRef:
56                  name: postgrest
57                  key: jwt_secret