I would like to backup my vaultwarden with ttionya/vaultwarden-backup. I found the linked docker-compose-file but it does not work in my case.
I just learnt - thanks to u/this_is_router and u/inner - that i store my vaultwarden-data in a local folder in the compose-directory, so in my case the dopcker compose looks like this:
services:
vaultwarden:
image: vaultwarden/server:latest
restart: always
# environment:
# SIGNUPS_ALLOWED: 'false'
# ADMIN_TOKEN: 'your authentication token'
ports:
- '127.0.0.1:8200:80'
volumes:
- ./vaultwarden:/data/
backup:
image: ttionya/vaultwarden-backup:latest
restart: always
# environment:
# RCLONE_REMOTE_NAME: 'BitwardenBackup'
# RCLONE_REMOTE_DIR: '/BitwardenBackup/'
# RCLONE_GLOBAL_FLAG: ''
# CRON: '5 * * * *'
# ZIP_ENABLE: 'TRUE'
# ZIP_PASSWORD: 'WHEREISMYPASSWORD?'
# ZIP_TYPE: 'zip'
# BACKUP_FILE_SUFFIX: '%Y%m%d'
# BACKUP_KEEP_DAYS: 0
# PING_URL: ''
# MAIL_SMTP_ENABLE: 'FALSE'
# MAIL_SMTP_VARIABLES: ''
# MAIL_TO: ''
# MAIL_WHEN_SUCCESS: 'TRUE'
# MAIL_WHEN_FAILURE: 'TRUE'
# TIMEZONE: 'UTC'
volumes:
- vaultwarden-data:/bitwarden/data/
- vaultwarden-rclone-data:/config/
# - /path/to/env:/.env
volumes:
vaultwarden-data:
# Specify the name of the volume where you save the vaultwarden data,
# use vaultwarden-data for new users
# and bitwardenrs-data for migrated users
name: vaultwarden-data
vaultwarden-rclone-data:
external: true
# Specify the name of the volume where you save the rclone configuration,
# use vaultwarden-rclone-data for new users
# and bitwardenrs-rclone-data for migrated users
name: vaultwarden-rclone-data````
If i try to update the stack (in portainer), it says:
"FAILURE: failed to deploy a stack: external volume "vaultwarden-rclone-data" not found"
Sorry for this noobish questions, but i try to learn by those stupid problems.
Based on the vaultwarden wiki, the default DB engine is SQLite. Therefore, all the data is in the sqlite file(s) contained in your data volume. This backup utility seems to take that into account and only focuses on the data volume.
You’d need to post your complete docker-compose.yaml, otherwise nobody knows what you’re doing.
Also (and I don’t want to sound rude) you should probably start learning docker with a less critical service. If you just learned how volumes work you should not store your passwords in one. Yet.
No problem. I use vaultwarden for years. In this case I am not really worried about data-loss because bitwarden keeps an copy of your credentials offline. So in the worst case, i can export them.
I would like to post it, but i have issues with formatting. voyager does not have this “code-format” and writes everything in one line.
Is there a workaround?
You just use three backticks to start and end a code block, it’s just markdown.
e.g.
version: '3.4' services: vaultwarden: image: vaultwarden/server:latest restart: always # environment: # SIGNUPS_ALLOWED: 'false' # ADMIN_TOKEN: 'your authentication token' ports: - '127.0.0.1:8200:80' volumes: - vaultwarden-data:/data/ ...
That’s it. Nice. I tried ’ instead of `, so the 2nd useful thing i learnd today. Thanks.
Make sure the SQL server is not writing/blocking any files:
docker-compose stop vaultwarden
Backup that specific folder to another destination and restart
docker-compose up -d
You just need to add the vaultwarden backup service to the same docker-compose file as vaultwarden, and give it the same mount point but
:ro
for read only.AI GENERATED:
The ttionya/vaultwarden-backup tool is intended to work with Docker volumes. However, you are using a bind mount, not a named volume. Bind mounts refer to the use of local folders to store data, as in your case (./vaultwarden:/data/), while volumes create a specific place within Docker’s own filesystem for the data.
Although this tool is designed for volumes, it might still work with bind mounts if the backup container can access the data directory. You would need to modify the volume line in the Docker Compose file for the backup tool to point to the directory where your bind mount is located, i.e., to point it to your local ./vaultwarden directory.
So, you might want to adjust your docker-compose.yml file like this:
services: vaultwarden-backup: image: ttionya/vaultwarden-backup:latest container_name: vaultwarden-backup environment: - PUID=1000 - PGID=1000 - BACKUP_INTERVAL=12h - PRUNE_BACKUPS=7D volumes: - ./vaultwarden:/vaultwarden:ro - ./backups:/backups restart: unless-stopped
In this configuration, ./vaultwarden:/vaultwarden:ro line is the key. It mounts your local ./vaultwarden directory to /vaultwarden inside the backup container (readonly mode), which should allow the backup tool to access the data.