Migrating Duplicati to docker

Hi,

I’m planning to migrate my Duplicati setup to docker. However, the docker container I’m using has the .config directory in a different place. As a result, if I just copy the databases across, I get lots of errors about being unable to access /root/.config (where the original databases were kept).

Is there any way around this?

To test another method, I exported the config and re-imported on the docker container, but it then needs to ‘repair’ the backup using the files on the remote storage. This has currently been running for over a week and still hasn’t completed, so I don’t think this is a viable way of doing it.

Any suggestions? I’m currently running the latest ‘Beta’ release.

Thanks

Andy

Nobody got any advice on this? Essentially I’m trying to migrate duplicati from one machine to another. The complication is that the new machine uses a different ‘config’ path that the old one, so it appears I can’t just copy all the databases across.

The rebuild has now been running for over two weeks, and appears to have been ‘stuck’ at about 70% for well over a week. I suspect that due to being on the beta, I’m also unable to stop this.

Suggestions appreciated.

Andy

Hi,

I know it’s probably too late to help you, but since this thread comes up when searching on Google, I thought I’d reply and give a solution. I just had to do the same migration from a Linux VM to a Docker container.

For my example:

  • The original data directory was: /root/.config/Duplicati
  • The new data directory where the original configuration was copied to: /new/config/path/Duplicati
  • I am also going to redirect the container’s /tmp directory somewhere off of my SSD, as it writes a tremendous amount of temp data while performing the backup: /not/ssd/tmp

So here is a docker-compose YAML file:

version: "3.5"

services:
  duplicati:
    image: duplicati/duplicati:beta
    restart: always
    command:
      - duplicati-server
      - --webservice-interface=any
      - --webservice-allowed-hostnames=*
      # Point the server to the original path of the configuration directory
      - --server-datafolder=/root/.config/Duplicati
      # I think the container default temp directory is /tmp, but I am forcing it just in case
      - -–tempdir=/tmp
    ports:
	  - "8200:8200"
	volumes:
	  # Trick the container into thinking the original path for config remains, but map it to your new config location
	  - /new/config/path/Duplicati:/root/.config
	  # Get temp to write to a disk drive
      - /not/ssd/tmp:/tmp
      # Folder for local backup jobs
	  - /media/duplicati:/backup
	  # Mount all the directories you wish to backup; in the container they probably should match the original locations to keep your original backup jobs working
      - /media/public:/source/public:ro
      - /media/home/me:/source/home/me:ro

I hope this helps someone in the future to dockerize their duplicati and retain all of their configuration.

1 Like

Nice summary, @tonyd!

And sorry I missed this thread earlier, @adhawkins. I would have tried helping you out. I made the transition to docker around the same time you were attempting it.

This is the second nice How-To document recently. Thanks to the community for contributing these.
Though this began in Support, categories can be changed by some (look for pencil on subject line):

image

Since I have one, I think I’ll just change it. Might be easier to find.