LINUX.ORG.RU
ФорумAdmin

Backup web приложения.

 , , ,


2

2

Существует Linux сервер, на котором крутится Apache, PHP, MySQL, GitLab, Shiny. На этот сервер по ssh постоянно ходят разработчики и используют его как песочницу (начиная от расчетных скриптов, заканчивая frontend-ом). Текущий backup делается скриптом на bash и упаковывается в tgz. Проблемы:

  • Потребность постоянно держать актуальным список файлов для backup-а;
  • Развертывание приложения из backup-а не будет быстрым (больше часа уже критично);
  • Как следствие из предыдущего пункта, плохая переносимость.

Ищу решения, нравится идея запаковать все в Docker контейнер. Взять официальный базовый image Ubuntu и настроить внутри него ssh, LAMP, и т.д. А backup-ы делать docker commit и docker push по cron-у. В качестве версии указывать текущую дату и время. Смущает то, что могут быть подводные камни использования docker-а, которые сложно предугадать. (Например, недавно разворачивал WordPress в Docker-е, оказалось что «WordPress saves the last IP as its ‘Home’ and ‘Site’ URL.». В итоге на другой машине с другим ip wordpress пытался загрузить css/js с ip старого host-а).

Чем плох или хорош такой сценарий использования Docker-а? Какие существуют альтернативные решения для backup-а?

нравится идея запаковать все в Docker контейнер

КонтейнерЫ. Один контрейнер - один процесс.
Разворачивай по-требованию через docker-compose и/или ansible.

А backup-ы делать docker commit и docker push по cron-у. В качестве версии указывать текущую дату и время.

Я бы отделил окружение от самого приложения и скармливал стеку из LAMP+Shiny+GitLab директорию с сорцами.
Их бекапить/восстанавливать по rsync+???-zip или Git'ом.

Yustas ★★★★ ()
Последнее исправление: Yustas (всего исправлений: 1)
Ответ на: комментарий от mypasswordisqwerty

Зависит от размера и типа БД
Но, для начала - так.

Yustas ★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.