🐕
Vaultwardenの利用
背景
パスワードマネージャーを利用したいが、第三者が運営するクラウドサービスに機密情報を委ねるのも心理的に微妙な気持ちになったりするときがあります。そこでVaultwardenなるものを発見して利用しはじめました。結局クラウド上にサーバを構築しているので、クラウドサービス上に情報を配置しているんですが、それはそう。
必要なもの
ドメイン
docker-compose.yml
docker-compose.yml
version: '3'
services:
nginx-proxy:
image: jwilder/nginx-proxy
container_name: nginx-proxy
ports:
- 80:80
- 443:443
environment:
- TZ=Asia/Tokyo
volumes:
- /docker/nginx-proxy/certs:/etc/nginx/certs:ro
- /docker/nginx-proxy/vhost:/etc/nginx/vhost.d
- /docker/nginx-proxy/html:/usr/share/nginx/html
- /var/run/docker.sock:/tmp/docker.sock:ro
restart: always
labels:
- com.github.jrcs.letsencrypt_nginx_proxy_companion.nginx_proxy=true
privileged: true
letsencrypt-nginx-proxy-companion:
image: nginxproxy/acme-companion
container_name: nginx-letsencrypt
environment:
- TZ=Asia/Tokyo
- NGINX_PROXY_CONTAINER=nginx-proxy
- DEAULT_EMAIL="xxxxx@xxxxx"
volumes:
- /docker/nginx-proxy/certs:/etc/nginx/certs
- /docker/nginx-proxy/vhost:/etc/nginx/vhost.d
- /docker/nginx-proxy/html:/usr/share/nginx/html
- /docker/nginx-proxy/acme:/etc/acme.sh
- /var/run/docker.sock:/var/run/docker.sock:ro
restart: always
depends_on:
- nginx-proxy
vaultwarden:
image: vaultwarden/server
container_name: vaultwarden
environment:
- TZ=Asia/Tokyo
- SIGNUPS_ALLOWED=false
- VIRTUAL_HOST=subdomain.yourdomain.tld
- VIRTUAL_PORT=80
- SMTP_HOST=smtp.sendgrid.net
- SMTP_FROM=xxxxx@xxxxx
- SMTP_PORT=465
- SMTP_SECURITY=force_tls
- SMTP_USERNAME=apikey
- SMTP_PASSWORD=xxxxx
- SMTP_AUTH_MECHANISM="Login"
- LETSENCRYPT_HOST=subdomain.yourdomain.tld
- LETSENCRYPT_EMAIL=xxxxx@xxxxx
volumes:
- /docker/vaultwarden/vw-data:/data
ports:
- 33545:80
restart: always
depends_on:
- nginx-proxy
jwilder/nginx-proxyと、nginxproxy/acme-companionというDockerイメージを利用することでhttps対応させています。SIGNUPS_ALLOWED=falseによってサインアップを無効化しているので、初回利用時等、サインアップが必要な際は有効にする必要があります。ドメインとかメールアドレスは適宜書き換えてください。私はSMTPサーバはsendgridを利用しましたが、他を利用する場合はWikiに説明が書いてあるので、そちらを参照してください。
Discussion