Перейти к содержанию

▍Duplicati

Duplicati

Настройка бэкап-сервер на Duplicati

Duplicati — это бесплатное программное обеспечение для резервного копирования с открытым исходным кодом для хранения зашифрованных резервных копий в Интернете для Windows, macOS и Linux.

Работает со стандартными протоколами, такими как FTP, SSH, WebDAV, а также с популярными сервисами, такими как Microsoft OneDrive, Amazon Cloud Drive & S3, Google Drive, box.com, Mega, hubiC и многими другими.

Compose для Duplicati

В моём случае используется Traefik в качестве обратного прокси для маршрутизации трафика внутрь Docker контейнеров. Базовую конфигурацию Traefik можно посмотреть здесь. Также используется Authelia в качестве сервера аутентификации и авторизации.

nano /srv/docker/docker-compose.yml
version: '3.3'

services:
   duplicati:
        image: linuxserver/duplicati:latest
        container_name: duplicati
        restart: always
        environment:
          - PUID=0
          - PGID=0
          - TZ=Europe/Moscow
        volumes:
          - $DIR_CONF/duplicati:/config
          - $DIR_BACKUP/DUPLICATI:/backups
          - /srv:/source
        labels:
          - "traefik.enable=true"
          - "traefik.http.routers.duplicati.rule=Host(`duplicati.example.ru`)"
          - "traefik.http.routers.duplicati.entrypoints=https"
          - "traefik.http.routers.duplicati.tls=true"
          - "traefik.http.services.duplicati.loadbalancer.server.port=8200"
          - "traefik.http.routers.duplicati.middlewares=WhitelistHome,authelia@docker"
          - "com.centurylinklabs.watchtower.enable=true"
, где /srv директория источник, с которого мы будет снимать бэкапы.

Запускаем:

docker-compose up -d

Пример настройки бэкапа

В качестве примера можно взять настройку бэкапа в S3 на Minio.

Ошибки и их решения

В случае если в один момент при создании бэкапов начали возникать ошибки вида:

duplikati The backup storage destination is missing data files. You can either enable `--rebuild-missing-dblock-files` or run the purge command to remove these files.

Необходимо выполнить:

$ docker exec -ti duplicati mono /app/duplicati/Duplicati.CommandLine.exe purge-broken-files --dbpath="/config/SFDMKCHNQS.sqlite" file:///backups

Duplicati

Если не помогло, то нажимаем на "Пересоздать (удалить и исправить)"

Duplicati

К началу