Резервное копирование в Docker Compose

Назовите свой проект

В качестве примера в этой инструкции используется проект с именем testit. Вы можете использовать другое название.

Создание резервных копий

Осторожно

Не рекомендуется создавать резервные копии от имени суперпользователя root (sudo) во избежание ошибок восстановления.

На время создания резервной копии продукт будет остановлен.

  1. Перед выполнением скрипта на создание резервной копии перейдите в директорию, которая содержит docker-compose.yml файл с настройками текущей версии системы.

  2. Для создания резервной копии выполните следующие команды:

    chmod +x scripts/backup.sh
    scripts/backup.sh docker-compose.yml testit
    

    Система будет запущена после окончания процесса. В рабочей директории будет создан архив с резервной копией. Формат имени файла архива: backup_{день}_{месяц}_{год}.tar. Например, backup_21_05_2019.tar.

Для внешних БД скрипт настраивается отдельно

Приведенный скрипт не распространяется на внешние БД (в случае их настройки и использования). Для внешних БД необходимо настроить резервное копирование отдельным шагом (штатными средствами PostgreSQL).

Восстановление из резервной копии

Продукт будет остановлен на время восстановления из резервной копии.

  1. Перед выполнением скрипта на восстановление из резервной копии перейдите в директорию, которая содержит docker-compose.yml и .env-файлы с настройками текущей версии системы.

  2. Для восстановления из резервной копии выполните следующие команды:

    chmod +x scripts/restore.sh
    scripts/restore.sh docker-compose.yml testit backup_21_05_2019.tar
    

    Система будет запущена после окончания процесса.

Если вы переносите Test IT на новый сервер

При переносе продукта на другой сервер рекомендуется предварительно установить Test IT на новом сервере с настройками по умолчанию, затем восстановить данные системы из резервной копии.
Для наилучшей совместимости на новом сервере рекомендуется устанавливать Test IT той же версии, которая содержится в резервной копии, переносимой из исходного сервера.

Обновлено: