92 lines
2.9 KiB
YAML
92 lines
2.9 KiB
YAML
# services/vaultwarden/deployment.yaml
|
|
apiVersion: apps/v1
|
|
kind: Deployment
|
|
metadata:
|
|
name: vaultwarden
|
|
namespace: vaultwarden
|
|
spec:
|
|
replicas: 1
|
|
strategy:
|
|
type: RollingUpdate
|
|
rollingUpdate:
|
|
maxSurge: 0
|
|
maxUnavailable: 1
|
|
selector:
|
|
matchLabels:
|
|
app: vaultwarden
|
|
template:
|
|
metadata:
|
|
labels:
|
|
app: vaultwarden
|
|
annotations:
|
|
vault.hashicorp.com/agent-inject: "true"
|
|
vault.hashicorp.com/role: "vaultwarden"
|
|
vault.hashicorp.com/agent-inject-secret-vaultwarden-env.sh: "kv/data/atlas/vaultwarden/vaultwarden-db-url"
|
|
vault.hashicorp.com/agent-inject-template-vaultwarden-env.sh: |
|
|
{{ with secret "kv/data/atlas/vaultwarden/vaultwarden-db-url" }}
|
|
export DATABASE_URL="{{ .Data.data.DATABASE_URL }}"
|
|
{{ end }}
|
|
{{ with secret "kv/data/atlas/vaultwarden/vaultwarden-admin" }}
|
|
export ADMIN_TOKEN="{{ .Data.data.ADMIN_TOKEN }}"
|
|
{{ end }}
|
|
{{ with secret "kv/data/atlas/mailu/mailu-initial-account-secret" }}
|
|
export SMTP_PASSWORD="{{ .Data.data.password }}"
|
|
{{ end }}
|
|
spec:
|
|
serviceAccountName: vaultwarden-vault
|
|
nodeSelector:
|
|
kubernetes.io/arch: arm64
|
|
node-role.kubernetes.io/worker: "true"
|
|
containers:
|
|
- name: vaultwarden
|
|
image: vaultwarden/server:1.33.2
|
|
command: ["/bin/sh", "-c"]
|
|
args:
|
|
- >-
|
|
. /vault/secrets/vaultwarden-env.sh
|
|
&& exec /start.sh
|
|
env:
|
|
- name: SIGNUPS_ALLOWED
|
|
value: "false"
|
|
- name: INVITATIONS_ALLOWED
|
|
value: "true"
|
|
- name: DOMAIN
|
|
value: "https://vault.bstein.dev"
|
|
- name: DB_CONNECTION_RETRIES
|
|
value: "0"
|
|
- name: DATABASE_TIMEOUT
|
|
value: "60"
|
|
- name: DATABASE_MIN_CONNS
|
|
value: "2"
|
|
- name: DATABASE_MAX_CONNS
|
|
value: "20"
|
|
- name: DATABASE_IDLE_TIMEOUT
|
|
value: "600"
|
|
- name: SMTP_HOST
|
|
value: "mailu-front.mailu-mailserver.svc.cluster.local"
|
|
- name: SMTP_PORT
|
|
value: "587"
|
|
- name: SMTP_SECURITY
|
|
value: "starttls"
|
|
- name: SMTP_ACCEPT_INVALID_HOSTNAMES
|
|
value: "false"
|
|
- name: SMTP_ACCEPT_INVALID_CERTS
|
|
value: "false"
|
|
- name: SMTP_USERNAME
|
|
value: "no-reply-vaultwarden@bstein.dev"
|
|
- name: SMTP_FROM
|
|
value: "no-reply-vaultwarden@bstein.dev"
|
|
- name: SMTP_FROM_NAME
|
|
value: "Vaultwarden"
|
|
ports:
|
|
- name: http
|
|
containerPort: 80
|
|
protocol: TCP
|
|
volumeMounts:
|
|
- name: vaultwarden-data
|
|
mountPath: /data
|
|
volumes:
|
|
- name: vaultwarden-data
|
|
persistentVolumeClaim:
|
|
claimName: vaultwarden-data
|