guide · static export
Software

Set up a local password manager with Bitwarden on Windows 11

Install Bitwarden on Windows 11 and run the vault locally with the self-hostable Vaultwarden server, no cloud account required.

by@guidox updated:10/26/26 time:45 min level:Advanced works on:Windows 11 25H2, Docker Desktop current, Vaultwarden latest image tools:Docker Desktop, Bitwarden desktop, Bitwarden browser extension
⚠ Safety notice

A self-hosted vault has no cloud recovery. If you forget the master password or lose the Vaultwarden data folder, every stored credential is unrecoverable. Keep encrypted backups.

TL;DR

Install **Bitwarden** desktop, point it at a **local Vaultwarden** server running in **Docker Desktop**, and store every password in a vault that never leaves your machine.

Before you start

Requirements

  • Windows 11 25H2 with WSL2 enabled
  • Docker Desktop from https://www.docker.com/products/docker-desktop
  • Bitwarden desktop app from https://bitwarden.com/download or the Microsoft Store
  • Bitwarden browser extension for your browser from https://bitwarden.com/download
  • Vaultwarden image documentation at https://github.com/dani-garcia/vaultwarden
  • Admin rights
Step by step

Instructions

01

Install Docker Desktop

Download Docker Desktop from https://www.docker.com/products/docker-desktop and run the installer. Keep **Use WSL 2 instead of Hyper-V** checked. Reboot when asked, then launch Docker and accept the terms. The whale icon in the tray should go steady, not animated.

⚠ warningWSL2 must be enabled - if the installer complains, run the command in Step 2.
02

Enable WSL2 if missing

Open **PowerShell as admin** and run the command below, then reboot. This installs WSL2 and the default Ubuntu distro Docker uses as a backend.

wsl --install
03

Create a Vaultwarden data folder

Pick a folder to store your vault database and attachments. Create it in Explorer or run the command below. Back this folder up regularly - it is your entire vault.

mkdir C:\\Vaultwarden\\data
04

Run the Vaultwarden container

In **PowerShell**, start Vaultwarden bound to localhost on port 8080. The container restarts automatically with Docker.

docker run -d --name vaultwarden --restart unless-stopped -v C:\\Vaultwarden\\data:/data -p 127.0.0.1:8080:80 vaultwarden/server:latest
tipBinding to 127.0.0.1 keeps the server reachable only from this PC. See https://github.com/dani-garcia/vaultwarden/wiki for HTTPS and remote-access options.
05

Install Bitwarden desktop and point it at the local server

Install **Bitwarden** desktop from https://bitwarden.com/download. On the login screen, click the **gear icon** (region selector), choose **self-hosted**, and set **Server URL** to http://localhost:8080. Save.

06

Create your account and master password

Click **Create account**. Use a strong master password you can memorize (a 4-word passphrase works well). Vaultwarden stores it as a hash in your local data folder - lose it and the vault is unrecoverable.

⚠ warningThere is no master password reset on a self-hosted vault. Write the passphrase on paper and store it securely.
07

Install the browser extension and verify

Install the **Bitwarden** extension from https://bitwarden.com/download. In the extension settings, set the same **Server URL** to http://localhost:8080 and log in. Save a test password on a real site and confirm it appears in both desktop and extension vaults.

Troubleshooting

Common issues

Browser extension error: We couldn't reach the server

Make sure Docker Desktop is running and the Vaultwarden container is up (docker ps). The URL must be http://localhost:8080, exactly.

Docker Desktop will not start

Open PowerShell as admin and run wsl --update, then start Docker Desktop again. Also enable Virtualization in BIOS if it is off.

Container stops after reboot

Open Docker Desktop, go to Containers, click vaultwarden and start it. The --restart unless-stopped flag only auto-starts when Docker itself is already running.

I want to access the vault from my phone

Bind the container to your LAN IP instead of 127.0.0.1 and set up HTTPS via a reverse proxy. The Vaultwarden wiki covers this at https://github.com/dani-garcia/vaultwarden/wiki

FAQ

Frequently asked

Why Vaultwarden instead of the official Bitwarden server?

Vaultwarden is a lightweight Rust reimplementation of the Bitwarden API, uses one container, and is compatible with all official Bitwarden clients.

Is this as secure as the Bitwarden cloud?

The crypto is the same (end-to-end AES-256). Security now depends on your backups and OS hardening instead of Bitwarden's SOC team.

Can I migrate my vault to the official cloud later?

Yes. Export your vault as a JSON file from desktop then import into any Bitwarden server.

How to undo this

Stop and remove the container with the two commands below, delete the C:\\Vaultwarden folder and uninstall Bitwarden desktop and the browser extension via Settings then Apps. Uninstall Docker Desktop the same way if you no longer need it.\n\ndocker stop vaultwarden\ndocker rm vaultwarden

Interactive version: checklist, feedback, related guides →

Free · no account needed · tracks your progress