OffshoreVps
チュートリアル2026年10月5日読了時間 6 分執筆:OffshoreVps チーム

Docker で VPS に Vaultwarden をセルフホストする

Bitwarden 互換の自分専用パスワードサーバーを動かす:Compose ファイル、ハッシュ化した管理者トークン、HTTPS、新規登録の停止、テスト済みのバックアップ。

Vaultwarden は、Bitwarden 互換の軽量なパスワードサーバーです。通常の Bitwarden アプリやブラウザ拡張機能をそのまま使えますが、保管庫は自分で管理するサーバー上に置かれます。メモリ使用量が非常に少ないため、小さな VPS で十分です。パスワードを保管するものなので、慎重にセットアップしてください。

Vaultwarden をセルフホストするために使うコマンドを、「mkdir -p ~/vaultwarden && cd ~/vaultwarden」から始めて表示している VPS のターミナルウィンドウ
このガイドでサーバー上で実行するコマンドの例。

始める前に

詳しい背景は、セルフホスト型 Vaultwarden のページにあります。

ステップ 1: Docker Compose ファイル

mkdir -p ~/vaultwarden && cd ~/vaultwarden
cat > compose.yaml <<'EOF'
services:
  vaultwarden:
    image: vaultwarden/server:latest
    restart: unless-stopped
    environment:
      DOMAIN: "https://vault.example.com"
      SIGNUPS_ALLOWED: "true"   # switch to false after you create your account
      ADMIN_TOKEN: "${ADMIN_TOKEN}"
    volumes:
      - ./data:/data
    ports:
      - "127.0.0.1:8081:80"
EOF

ステップ 2: 管理者トークンを生成する

管理ページではユーザーを管理できます。トークンは平文ではなく、ハッシュ化したものを保存してください。Vaultwarden のイメージにはヘルパーが含まれています。

docker run --rm -it vaultwarden/server /vaultwarden hash
# paste the result into a .env file as ADMIN_TOKEN='$argon2id$...'
このガイドの手順(順番どおり):1. 始める前に;2. Docker Compose ファイル;3. 管理者トークンを生成する;4. Caddy による HTTPS;5. 2 段階ログインを有効にする;6. 保管庫をバックアップする
このガイドの手順(順番どおり)。

ステップ 3: 起動する

docker compose up -d
docker compose logs -f

ステップ 4: Caddy で HTTPS 化する

Bitwarden クライアントには HTTPS が必要です。

vault.example.com {
  reverse_proxy 127.0.0.1:8081
}

Caddy をリロードしてサイトを開きます。アカウントを作成したら、SIGNUPS_ALLOWED を false に設定し、もう一度 docker compose up -d を実行して、第三者が登録できないようにします。

ステップ 5: 2段階認証を有効にする

Web 保管庫で、認証アプリまたはハードウェアキーによる2段階認証を有効にします。リカバリーコードはオフラインで保存してください。

保管庫をバックアップする

すべてのデータは ./data にあり、主に SQLite データベースと添付ファイルです。整合性のあるコピーを定期的に作成し、サーバーの外に保管してください。

sqlite3 data/db.sqlite3 ".backup '/backup/vaultwarden-$(date +%F).sqlite3'"
tar czf /backup/vw-files-$(date +%F).tgz data/attachments data/rsa_key*

復元は少なくとも一度はテストしてください。テストしていないバックアップは、願望にすぎません。