apiVersion: apps/v1 kind: Deployment metadata: name: vaultwarden spec: replicas: 1 selector: matchLabels: app: vaultwarden template: metadata: labels: app: vaultwarden spec: volumes: - name: config configMap: name: vaultwarden - name: data emptyDir: {} containers: - name: vaultwarden image: docker.io/vaultwarden/server:testing imagePullPolicy: Always resources: limits: memory: "128Mi" cpu: "500m" requests: memory: "64Mi" cpu: "100m" envFrom: - secretRef: name: vaultwarden ports: - containerPort: 80 name: web volumeMounts: - name: data mountPath: /data - name: config mountPath: /data/config.json subPath: vaultwarden.json --- apiVersion: v1 kind: Service metadata: name: vaultwarden labels: app: vaultwarden spec: selector: app: vaultwarden ports: - port: 80 targetPort: 80 name: web --- apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: vaultwarden annotations: cert-manager.io/cluser-issuer: "le-issuer" spec: tls: - hosts: - pw.gmem.ca secretName: gmem-ca-wildcard rules: - host: pw.gmem.ca http: paths: - path: / pathType: Prefix backend: service: name: vaultwarden port: number: 80