Vaultwarden安装
一个开源的 Bitwarden 的替代方案
- 生成密码
openssl rand -base64 32- docker-compose
services: vaultwarden: image: vaultwarden/server:latest container_name: vaultwarden environment: - DOMAIN=https://vault.example.com # 替换为你的 Cloudflare 域名 - SIGNUPS_ALLOWED=true # 注册完第一个账号后记得改回 false - ADMIN_TOKEN=ImR/v/pFFuBZGI7gpII/R45OYEdupS1R7XchFROdiKc= # 访问 /admin 页面的密码 - WEB_VAULT_ENABLED=true # 启用网页端 # 开启 WebSocket 通知(实时同步修改) - WEBSOCKET_ENABLED=true - SMTP_HOST=smtp.163.com - SMTP_FROM=example@163.com - SMTP_FROM_NAME=Vaultwarden - SMTP_PORT=465 - SMTP_SECURITY=starttls - SMTP_USERNAME=example@163.com - SMTP_PASSWORD=WFU2e volumes: - ./data:/data ports: - "8880:8880" networks: - local restart: unless-stopped
networks: local: external: true- 备份配置
# --- 全局参数 (不再嵌套在 location/storage 下) ---source_directories: - /data/podman/composes/vaultwarden/data
repositories: - path: /mnt/ex_storage_1/backups/valutwarden
exclude_patterns: - '*.log' - 'db.sqlite3' - 'db.sqlite3-shm' - 'db.sqlite3-wal'
encryption_passphrase: "4tZ44vYPYIjZCnCxkiVgz1gupGGIMhpd2GlnKKdeivCooNHX"compression: lz4checkpoint_interval: 1800
# --- 保留策略 ---keep_daily: 7keep_weekly: 4keep_monthly: 6
# --- 命令钩子 (使用新的 commands 语法) ---commands: - before: action when: [ create ] run: - echo "开始备份 Vaultwarden 数据库..." - sqlite3 /data/podman/composes/vaultwarden/data/db.sqlite3 ".backup /data/podman/composes/vaultwarden/data/db.sqlite3.bak"
- after: action when: [ create ] run: - rm /data/podman/composes/vaultwarden/data/db.sqlite3.bak - echo "本地备份完成,同步到 Cloudflare R2..." - rclone sync /mnt/ex_storage_1/backups/valutwarden r2:documents/vaultwarden --progress
- after: error when: [ create, prune, compact, check ] run: - echo "备份任务发生错误,请检查日志!"
# --- 其他配置 ---bootstrap: {}# --- 全局参数 (不再嵌套在 location/storage 下) ---source_directories: - /data/podman/composes/vaultwarden/data
repositories: - path: /mnt/ex_storage_1/backups/valutwarden
exclude_patterns: - '*.log' - 'db.sqlite3' - 'db.sqlite3-shm' - 'db.sqlite3-wal'
encryption_passphrase: "4tZ44vYPYIjZCnCxkiVgz1gupGGIMhpd2GlnKKdeivCooNHX"compression: lz4checkpoint_interval: 1800
# --- 保留策略 ---keep_daily: 7keep_weekly: 4keep_monthly: 6
# --- 命令钩子 (使用新的 commands 语法) ---commands: - before: action when: [ create ] run: - echo "开始备份 Vaultwarden 数据库..." - sqlite3 /data/podman/composes/vaultwarden/data/db.sqlite3 ".backup /data/podman/composes/vaultwarden/data/db.sqlite3.bak"
- after: action when: [ create ] run: - rm /data/podman/composes/vaultwarden/data/db.sqlite3.bak - echo "本地备份完成,同步到 Cloudflare R2..." - rclone sync /mnt/ex_storage_1/backups/valutwarden r2:documents/vaultwarden --progress
- after: error when: [ create, prune, compact, check ] run: - echo "备份任务发生错误,请检查日志!"
# --- 其他配置 ---bootstrap: {}- 进行备份
# 安装备份环境sudo apt update && sudo apt install borgbackup borgmatic -ypip install --upgrade borgmatic --break-system-packages # 升级apt install sqllite3 python3-pyfuse3 python3-llfuse # 确保环境没有问题
# 备份borgmatic init --encryption repokey # 初始化borgmatic --verbosity 1 # 手动备份
# 设置 crontab0 3 * * * /usr/bin/borgmatic --syslog --verbosity 03. 拓展信息
Section titled “3. 拓展信息”3.1. 客户端
Section titled “3.1. 客户端”- 直接使用 Bitwarden 即可