Если вы используете собственное хостинг, обратите внимание на утилиту rsync, которая позволяет возобновлять прерванные передачи.
Если вы хотите регулярно скачивать резервные копии Discourse, вы можете настроить rClone с помощью задачи cron.
Вы можете настроить FTP-сервер на своём компьютере и настроить rClone для копирования резервных копий на этот компьютер. Просто убедитесь, что ваш компьютер и FTP-сервер запущены в то время, которое вы указали в задаче cron.
Спасибо за предложенные подходы. Ранее бэкапы делали другие люди. Я не хотел, чтобы они имели прямой доступ к хост-машине. Возможно, позже мне стоит изменить наш подход к сотрудничеству.
Спасибо. Я попробую это.
Ранее бэкапы выполняли другие люди. Я не хотел, чтобы они имели прямой доступ к хост-машине. Есть ли способ разрешить им запускать только команду rsync, но запретить выполнение любых других команд на моей машине?
Привет, я пытаюсь скачать резервную копию через Python с помощью API, но возникла проблема с токеном — не понимаю, откуда его взять и как получить.
Я могу передать свой API-ключ, имя пользователя и URL, чтобы построить ссылку для скачивания (https://{url}/admin/backups/{latest_backup_file_name}?token={token???}).
Кто-нибудь уже пробовал сделать это таким способом?
Я бы сделал это через SSH или какой-то другой прямой метод, а не через API. Какую проблему вы решаете?
Я просто создаю своего бота для управления чем-то на форуме, и теперь хочу сделать автоматические резервные копии :). Мне удалось создать резервную копию через API, и теперь я пытаюсь получить их из Discourse через API.
Но вчера вечером я нашёл обходной путь, и теперь мой бот получает резервные копии прямо из контейнера.
Отлично! Рад, что у вас получилось.
Именно это я и имел в виду. Вам не обязательно получать их из контейнера — они находятся в /var/discourse/shared/standalone/backups, но проще всего загрузить их в S3.