11
submitted 1 year ago* (last edited 1 year ago) by moddy@feddit.de to c/selfhosted@lemmy.world

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:/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

EDIT: Now it runs! I just had to edit the folders. Edited the docker-compose.yml above. Thanks...

top 10 comments
sorted by: hot top controversial new old
[-] HybridSarcasm@lemmy.world 3 points 1 year ago

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.

[-] doeknius_gloek@feddit.de 2 points 1 year ago

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.

[-] moddy@feddit.de 1 points 1 year ago

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?

[-] obosob@feddit.uk 1 points 1 year ago* (last edited 1 year ago)

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/ 
...
[-] moddy@feddit.de 1 points 1 year ago

That's it. Nice. I tried ' instead of `, so the 2nd useful thing i learnd today. Thanks.

[-] easeKItMAn@lemmy.world 2 points 1 year ago

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

[-] moddy@feddit.de 2 points 1 year ago

Thank you. Had to edit the folders. Not the stack was "successfully deployed". Have to watch now if the backup works.

[-] MangoPenguin 1 points 1 year ago

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.

[-] skadden@ctrlaltelite.xyz 1 points 1 year ago

Where do you have that data directory on disk? It's likely not where portainer is looking. Your options are to move it to where portainer is expecting or to use the absolute path to the data directory to the left of the colon for the volume mapping.

For example, I put all my docker compose files in /opt/docker/vaultwarden so if my data were next to it I would use /opt/docker/vaultwarden/vaultwarden-rclone-data:/config/

I don't recall the path where portainer looks but it's going to be wherever you have its docker-compose. I can help you find it if that's the route you'd like to take, but I won't be able to help with that for a few hours.

[-] LachlanUnchained@lemmyunchained.net 1 points 1 year ago* (last edited 1 year ago)

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.

load more comments
view more: next ›
this post was submitted on 07 Aug 2023
11 points (100.0% liked)

Selfhosted

40040 readers
488 users here now

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.

Rules:

  1. Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.

  2. No spam posting.

  3. Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it's not obvious why your post topic revolves around selfhosting, please include details to make it clear.

  4. Don't duplicate the full text of your blog or github here. Just post the link for folks to click.

  5. Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).

  6. No trolling.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

founded 1 year ago
MODERATORS