diff --git a/clusters/ipv6/tools/vaultwarden/vaultwarden-ingress.yml b/clusters/ipv6/tools/vaultwarden/vaultwarden-ingress.yml new file mode 100644 index 0000000..726c2aa --- /dev/null +++ b/clusters/ipv6/tools/vaultwarden/vaultwarden-ingress.yml @@ -0,0 +1,26 @@ +--- +apiVersion: networking.k8s.io/v1 +kind: Ingress +metadata: + name: vw-ingress + namespace: tools + annotations: + cert-manager.io/cluster-issuer: letsencrypt-cloudflare +spec: + ingressClassName: traefik + tls: + - hosts: + - vw.akshun-lab.cc + secretName: vw-tls + rules: + - host: vw.akshun-lab.cc + http: + paths: + - path: / + pathType: Prefix + backend: + service: + name: vaultwarden-service + port: + number: 80 + diff --git a/clusters/ipv6/tools/vaultwarden/vaultwarden-pvc.yml b/clusters/ipv6/tools/vaultwarden/vaultwarden-pvc.yml new file mode 100644 index 0000000..dc4c090 --- /dev/null +++ b/clusters/ipv6/tools/vaultwarden/vaultwarden-pvc.yml @@ -0,0 +1,14 @@ +--- +apiVersion: v1 +kind: PersistentVolumeClaim +metadata: + name: vaultwarden-longhorn + namespace: tools +spec: + accessModes: + - ReadWriteOnce + volumeMode: Filesystem + resources: + requests: + storage: 1Gi + storageClassName: longhorn diff --git a/clusters/ipv6/tools/vaultwarden/vaultwarden-svc.yml b/clusters/ipv6/tools/vaultwarden/vaultwarden-svc.yml new file mode 100644 index 0000000..c06e08e --- /dev/null +++ b/clusters/ipv6/tools/vaultwarden/vaultwarden-svc.yml @@ -0,0 +1,12 @@ +--- +apiVersion: v1 +kind: Service +metadata: + name: vaultwarden-service + namespace: tools +spec: + selector: + app: vaultwarden + ports: + - port: 80 + targetPort: 80 diff --git a/clusters/ipv6/tools/vaultwarden/vaultwarden.yml b/clusters/ipv6/tools/vaultwarden/vaultwarden.yml new file mode 100644 index 0000000..1e43ed6 --- /dev/null +++ b/clusters/ipv6/tools/vaultwarden/vaultwarden.yml @@ -0,0 +1,33 @@ +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: vaultwarden + namespace: tools +spec: + strategy: + type: Recreate + replicas: 1 + selector: + matchLabels: + app: vaultwarden + template: + metadata: + labels: + app: vaultwarden + spec: + containers: + - name: vaultwarden + image: vaultwarden/server:1.34.3 + ports: + - containerPort: 80 + env: + - name: SIGNUPS_ALLOWED + value: "false" + volumeMounts: + - name: data + mountPath: /data/ + volumes: + - name: data + persistentVolumeClaim: + claimName: vaultwarden-longhorn