175 lines · 3.5 KB · YAML
RawDownload
---kind: ServiceapiVersion: v1metadata:  namespace: ${ZED_KUBE_NAMESPACE}  name: postgrest  annotations:    service.beta.kubernetes.io/do-loadbalancer-name: "postgrest-${ZED_KUBE_NAMESPACE}"    service.beta.kubernetes.io/do-loadbalancer-tls-ports: "443"    service.beta.kubernetes.io/do-loadbalancer-certificate-id: ${ZED_DO_CERTIFICATE_ID}    service.beta.kubernetes.io/do-loadbalancer-disable-lets-encrypt-dns-records: "true"spec:  type: LoadBalancer  selector:    app: nginx  ports:    - name: web      protocol: TCP      port: 443      targetPort: 8080 ---apiVersion: apps/v1kind: Deploymentmetadata:  namespace: ${ZED_KUBE_NAMESPACE}  name: nginxspec:  replicas: 1  selector:    matchLabels:      app: nginx  template:    metadata:      labels:        app: nginx    spec:      containers:        - name: nginx          image: nginx:latest          ports:            - containerPort: 8080              protocol: TCP          volumeMounts:            - name: nginx-config              mountPath: /etc/nginx/nginx.conf              subPath: nginx.conf      volumes:        - name: nginx-config          configMap:            name: nginx-config ---apiVersion: v1kind: ConfigMapmetadata:  namespace: ${ZED_KUBE_NAMESPACE}  name: nginx-configdata:  nginx.conf: |    events {}     http {      server {        listen 8080;         location /app/ {          proxy_pass http://postgrest-app:8080/;        }         location /llm/ {          proxy_pass http://postgrest-llm:8080/;        }      }    } ---apiVersion: v1kind: Servicemetadata:  namespace: ${ZED_KUBE_NAMESPACE}  name: postgrest-appspec:  selector:    app: postgrest-app  ports:    - protocol: TCP      port: 8080      targetPort: 8080 ---apiVersion: v1kind: Servicemetadata:  namespace: ${ZED_KUBE_NAMESPACE}  name: postgrest-llmspec:  selector:    app: postgrest-llm  ports:    - protocol: TCP      port: 8080      targetPort: 8080 ---apiVersion: apps/v1kind: Deploymentmetadata:  namespace: ${ZED_KUBE_NAMESPACE}  name: postgrest-appspec:  replicas: 1  selector:    matchLabels:      app: postgrest-app  template:    metadata:      labels:        app: postgrest-app    spec:      containers:        - name: postgrest          image: "postgrest/postgrest"          ports:            - containerPort: 8080              protocol: TCP          env:            - name: PGRST_SERVER_PORT              value: "8080"            - name: PGRST_DB_URI              valueFrom:                secretKeyRef:                  name: database                  key: url            - name: PGRST_JWT_SECRET              valueFrom:                secretKeyRef:                  name: postgrest                  key: jwt_secret ---apiVersion: apps/v1kind: Deploymentmetadata:  namespace: ${ZED_KUBE_NAMESPACE}  name: postgrest-llmspec:  replicas: 1  selector:    matchLabels:      app: postgrest-llm  template:    metadata:      labels:        app: postgrest-llm    spec:      containers:        - name: postgrest          image: "postgrest/postgrest"          ports:            - containerPort: 8080              protocol: TCP          env:            - name: PGRST_SERVER_PORT              value: "8080"            - name: PGRST_DB_URI              valueFrom:                secretKeyRef:                  name: llm-database                  key: url            - name: PGRST_JWT_SECRET              valueFrom:                secretKeyRef:                  name: postgrest                  key: jwt_secret