Bruceforce/Vaultwarden-backup
Simple cron powered backup image for vaultwarden.
Directory Structure
- .env
- docker-compose.yml
docker-compose.yml
version: '3.7'
services:
vaultwarden:
image: vaultwarden/server
container_name: vaultwarden
ports:
- 8002:80
volumes:
- ./data:/data/
restart: on-failure
env_file:
- .env
vaultwarden-backup:
image: bruceforce/vaultwarden-backup
restart: on-failure
init: true
depends_on:
- vaultwarden
volumes:
- ./data:/data/
# uncomment this if you want your backup to be written to ./backup/ folder"
- ./backup:/backup/
env_file:
- .env.env
APP_DIR="${APP_DIR:-/app}"
APP_DIR_PERMISSIONS="${APP_DIR_PERMISSIONS:-700}"
BACKUP_DIR="${BACKUP_DIR:-/backup}"
BACKUP_DIR_PERMISSIONS="${BACKUP_DIR_PERMISSIONS:-700}"
BACKUP_ON_STARTUP="${BACKUP_ON_STARTUP:-false}"
CRONFILE="${CRONFILE:-/etc/crontabs/root}"
CRON_TIME="${CRON_TIME:-0 5 * * *}"
DELETE_AFTER="${DELETE_AFTER:-0}"
ENCRYPTION_ALGORITHM="${ENCRYPTION_ALGORITHM:-AES256}"
ENCRYPTION_BASE64_GPG_KEY="${ENCRYPTION_BASE64_GPG_KEY:-false}"
ENCRYPTION_GPG_KEYFILE_LOCATION="${ENCRYPTION_GPG_KEYFILE_LOCATION:-$APP_DIR/encryption_key.asc}"
ENCRYPTION_PASSWORD="${ENCRYPTION_PASSWORD:-false}"
GID="${GID:-100}"
GNUPGHOME="${GNUPGHOME:-/tmp/gpg}"
GNUPGHOME_PERMISSIONS="${GNUPGHOME_PERMISSIONS:-700}"
HEALTHCHECK_FILE="${HEALTHCHECK_FILE:-$APP_DIR/health}"
HEALTHCHECK_FILE_PERMISSIONS="${HEALTHCHECK_FILE_PERMISSIONS:-700}"
LOGFILE_APP="${LOGFILE_APP:-$LOG_DIR/app.log}"
LOGFILE_CRON="${LOGFILE_CRON:-$LOG_DIR/cron.log}"
LOG_CLEAR_AT_START="${LOG_CLEAR_AT_START:-false}"
LOG_DIR="${LOG_DIR:-$APP_DIR/log}"
LOG_DIR_PERMISSIONS="${LOG_DIR_PERMISSIONS:-777}"
TIMESTAMP="${TIMESTAMP:-false}"
UID="${UID:-100}"
VW_BACKUP_VERSION="0.0.0-dev"Resources
GitHub: https://github.com/Bruceforce/vaultwarden-backup
Docker Hub: https://hub.docker.com/r/bruceforce/vaultwarden-backup
Configuration: https://github.com/Bruceforce/vaultwarden-backup#usage