WebDav это надстройка к протоколу http, можно использовать curl - кроссплатформенная служебная программа командной строки, позволяющая взаимодействовать с множеством различных серверов по множеству различных протоколов с синтаксисом URL.
Для бэкапа форума можно использовать следующий bash-скрипт:
backup.sh
#!/bin/sh
# Название сайта
$SITENAME1="site.ru"
# Каталог сайта
SITE_DIR1="/var/www/site.ru/"
# Каталог для архива
BACKUP_DIR="/var/www/backup/"
DATE=`date +%Y-%m`
# Имя пользователя на yandex
WEBUSER="name@yandex.ru"
# Пароль от яндекс диска
WEBPASS="password"
# Удаляем пустые папки (если вы их укажите в переменной) и файлы старше 2 дней.
find $BACKUP_DIR -type f -mtime +2 -print0 | xargs -0 rm -rf &&
find $BACKUP_DIR -type d -mtime +2 -print0 | xargs -0 rm -rf &&
# Архивируем все файлы в каталоге вашего сайта
tar -czf $BACKUP_DIR$SITENAME1-$DATE.tar.gz $SITE_DIR1 &&
# Отправляем получившийся архив в облако
curl --user $WEBUSER:$WEBPASS -T $BACKUP_DIR$SITENAME1-$DATE.tar.gz https://webdav.yandex.ru/ --verbose -o /dev/null
Для выполнения скрипта достаточно задействовать системный cron
crontab -e
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
30 04 * * * /root/backup.sh
Для полной синхронизации я бы использовал node.js+gulp-rsync+cron а в качестве Backup хранилища использовал бы другой VPS либо домашний ПК с Windows 10 под WSL2 (Ну или Hyper-V, в докере не вижу смысла). Если домашний ПК включен (пингуем по крону 22 порт) то включаем синхронизацию файлов. В rsync это будет молниеносно.
https://www.hanselman.com/blog/how-to-ssh-into-wsl2-on-windows-10-from-an-external-machine