selfhost.directory

The index of self-hostable projects — ranked, categorized and served with live updates.
Own your data and stop giving it to big tech.

lazywarden logo

Self-host lazywarden

1.1.0

Automated Bitwarden vault backups with multi-cloud storage

BetaOpen SourceMIT
Updated8 months ago
LanguagePython
Setup difficultyModerate
Stars
832
Docker
querylab/lazywarden
Install with Docker Compose
lazywarden screenshot 1lazywarden screenshot 2

What is lazywarden?

This tool automates Bitwarden vault backups using Python. It handles encrypted exports of vault data including attachments, uploading them to multiple cloud services simultaneously. The backup process uses AES-256 encryption with Argon2 key derivation. Alerts can be sent through various messaging platforms when backups complete. Users can schedule automatic backups daily, weekly, or monthly through cron or calendar integration.

Should you self-host lazywarden?

lazywarden scores 50/100 on selfhost.directory (how scoring works) and ranks #34 of 46 in Backup. It has 832 GitHub stars.

There was no stable release in the past 12 months, so check the repository's recent activity before you rely on it.

Setup is moderate: expect some configuration beyond a single command. An official Docker image is available. It is MIT-licensed and written mostly in Python.

Its closest alternative on selfhost.directory is Restic (82/100, 36 859 stars). It scores higher overall, so compare the two before you pick. See lazywarden vs Restic side by side.

Features

  • Data integrity verification
  • Encrypted backups
  • Flexible scheduling
  • KeePass Export
  • Multi-cloud storage

lazywarden README

How to install lazywarden

Install lazywarden with Docker Compose

Environment variables
.env file with BW_URL, BW_USERNAME, BW_PASSWORD, ENCRYPTION_PASSWORD, ZIP_PASSWORD, ZIP_ATTACHMENT_PASSWORD and optional cloud service credentials
services:
  lazywarden:
    container_name: lazywarden
    hostname: lazywarden
    image: querylab/lazywarden:latest
    env_file:
      - .env
    environment:
      UNLOCK_VAULT: "true"
    volumes:
      - /root/lazywarden/config:/root/lazywarden/config
      - /root/lazywarden/backup-drive:/root/lazywarden/backup-drive/
      - /root/lazywarden/.env:/app/.env
    restart: unless-stopped
docker compose up -d

Container runs main.py every 24 hours by default

How to configure lazywarden

  • BW_PASSWORDBitwarden password

    Bitwarden password

  • BW_TOTP_SECRETTOTP secret for authentication apps

    TOTP secret for authentication apps

  • BW_URLBitwarden instance URL

    Bitwarden instance URL

  • BW_USERNAMEBitwarden username

    Bitwarden username

  • DROPBOX_ACCESS_TOKENDropbox access token

    Dropbox access token

  • DROPBOX_APP_KEYDropbox app key

    Dropbox app key

  • DROPBOX_APP_SECRETDropbox app secret

    Dropbox app secret

  • DROPBOX_REFRESH_TOKENDropbox refresh token

    Dropbox refresh token

  • ENCRYPTION_PASSWORDEncryption password for backup

    Encryption password for backup

  • MEGA_EMAILMEGA email

    MEGA email

  • MEGA_PASSWORDMEGA password

    MEGA password

  • PCLOUD_PASSWORDpCloud password

    pCloud password

  • PCLOUD_USERNAMEpCloud username

    pCloud username

  • ZIP_ATTACHMENT_PASSWORDPassword for ZIP attachments

    Password for ZIP attachments

  • ZIP_PASSWORDPassword for ZIP file

    Password for ZIP file

lazywarden releases & version history

More in Password Managers

Rate this project

Click to rate — no account needed.

0 comments

Posting as guest
Loading comments…