vaultwardenバージョンアップ
新しい端末をセットアップしたらbitwardenのクライアントが動かない。
調べたらホストしているvaultwardenが古いせいらしい。…というか昔作ったbitwardenrsのdockerイメージのままでvaultwardenのイメージに乗せ替えをしていないので古すぎた、というのが正しいか。
いずれにしろ、これを機にバージョンアップしてみる。
dockerイメージの取得
まずは、dockerイメージが変わっているので新しいイメージを取得する。
これ自体は特段目新しいことはない。
# docker pull vaultwarden/server:latest
設定変更
次にdockerイメージの差し替えにあわせてdoker-compose.ymlを修正。
変えたのはdockerイメージ名とSMTPSのパラメータ修正、おまけでディレクトリ名。
docker-compose.yml
version: '3.7'
services:
vaultwarden: # <- 名前変えた
image: vaultwarden/server # <- 名前変えた
restart: always
volumes:
- /docker/vaultwarden/data:/data # <- ディレクトリ名変えた
environment:
DOMAIN: '<ホスト先FQDN>'
WEBSOCKET_ENABLED: 'true' # Required to use websockets
SIGNUPS_ALLOWED: 'false' # set to false to disable signups
SMTP_HOST: 'email-smtp.us-east-1.amazonaws.com'
SMTP_FROM: '<E-Mail>'
SMTP_PORT: '587'
SMTP_SECURITY: 'starttls' # <- SMTP_SSL: 'TRUE'から変更
SMTP_USERNAME: '<AWSのキー情報に従う>'
SMTP_PASSWORD: '<AWSのキー情報に従う>'
caddy:
image: caddy
restart: unless-stopped
volumes:
- /docker/vaultwarden/Caddyfile:/etc/caddy/Caddyfile # <- ディレクトリ名変えた
- /docker/vaultwarden/log:/var/log/caddy # <- ディレクトリ名変えた
ports:
- 80:80 # needed for Let's Encrypt
- 443:443
Caddyfile
<ホストFQDN> {
log {
output file /var/log/caddy/access.log {
roll_size 1gb
roll_keep 5
roll_keep_for 720h
}
}
# The negotiation endpoint is also proxied to Rocket
#reverse_proxy /notifications/hub/negotiate vaultwarden:80
# Notifications redirected to the websockets server
reverse_proxy /notifications/hub vaultwarden:3012
# Proxy the Root directory to Rocket
reverse_proxy vaultwarden:80 {
header_up X-RealIP {remote_host}
}
}
起動確認
毎度のdocker-composeで起動。
# docker-compose up -d
何回か試行したが、Caddyfileのコンテナ名があっておらず、502 Bad Gatewayになってしまい焦った。素直に名前を合わせることで無事起動。
