Duplicati 101 - The Best Open Source File Backup Solution
Duplicati is a backup client that securely stores encrypted, incremental, compressed remote backups of local files on cloud storage services and remote file servers. Duplicati supports not only various online backup services like OneDrive, Amazon S3, Backblaze, Rackspace Cloud Files, Tahoe LAFS, and Google Drive, but also any servers that support SSH/SFTP, WebDAV, or FTP.
Duplicati has been our primary file backup solution for years, it offers stability and features that can only be found in premium backup solution services. We love it because it is open source and also reliable, it saves us many times during server crashes and data loss. We use duplicati as our offsite server backup to external services like Google Drive, Dropbox, and AWS.
You can also use duplicati for your own personal use, it also offers support for all major operating system platforms like Windows, Mac, and Linux.
Getting Started: How to Install Duplicati
As we mention in the introduction we use duplicati in our own server, there are many installation method that we can use to install it, but in this article we will only cover docker as our main installation method. Here are steps by steps how to install it using docker
- Install docker and docker-compose in your machine
- Create a docker-compose.yml in any directory you want e.g (/home/server/container/duplicati/docker-compose.yml)
version: "2.1" services: duplicati: image: linuxserver/duplicati container_name: duplicati restart: always environment: - PUID=0 - PGID=0 - TZ=UTC+7 - CLI_ARGS= #optional volumes: - ./config:/config - /path/to/backup/source:/path/to/backup/source ports: - 8200:8200
Notes : Please don’t forget to change the /path/to/backup/source with your backup source directory
- Run the container by executing command :
docker-compose up -d
- Wola your duplicati now run at port 8200, and can be accessible in http://serverport:8200
There are many advantages by using docker as the installation method, some of them are :
Security
You don’t have worry to about your duplicati instance being hacked it lives within the container so it become more secure.
Maintainability
If your are installing it in your server, then there will be chances that it will conflicts with other programs, a containers isolates the installation so it will runs independently without interfering with other programs. It also makes it easier for u to do an update, here are some commands that you can do to update the container :
docker-compose pull docker-compose restart
References :