Если этот образ WordPress хорошо сделан, вам нужно только сделать резервную копию ваших томов .Однако если вы изменили файлы в файловой системе контейнера (в отличие от томов), вам также потребуется commit вашего контейнера для создания нового образа докера.Такое изображение можно затем использовать для создания новых контейнеров.
Чтобы выяснить, были ли файлы изменены или добавлены в файловую систему контейнера, выполните команду docker diff
:
docker diff wordpress_wordpress_1
На моих тестах, после прохождения настройки Wordpress и даже после обновления Wordpress, плагина и тем результат команды docker diff
дает мне:
C /run
C /run/apache2
A /run/apache2/apache2.pid
Это означает, что только 2 файла / каталога были C зависли и 1 файл A dded.
Таким образом, нет смысла сталкиваться с проблемой использованияdocker commit
команда для создания нового образа докера.Такое изображение будет иметь только эти 3 модификации.
Это также означает, что этот образ докера Wordpress хорошо спроектирован, потому что все ценные данные сохраняются в томах докера.(То же самое относится и к образу MySQL)
Как бороться с потерянным контейнером?
Как мы уже убедились ранее, все ценные данные находятся в томах докера.Так что не имеет значения, если вы потеряете свои контейнеры.Все, что имеет значение, это не потерять свои объемы.На вопрос о том, как сделать резервную копию тома докера уже многократно отвечали при переполнении стека.
Теперь следует помнить, что несколько команд docker и docker-compose действительно удаляют тома!Например, если вы запускаете docker rm -v <my container>
, опция -v
должна указывать Docker также удалять связанные тома при удалении контейнера.Или, если вы запустите docker-compose down -v
, тома также будут удалены.
Как сделать резервную копию Wordpress, работающего в проекте docker-compose?
Что ж, лучший способ - это сделать резервную копию вашегоWordpress данные с плагином Wordpress, который хорошо известен тем, что делает это правильно.Не потому, что вы работаете с Wordpress в докер-контейнерах, хорошие практики Wordpress больше не применяются.
В случае, если вам нужно восстановить ваш сайт, запустите новые контейнеры / тома с помощью файла docker-compose.yml, пройдите минимальную настройку Wordpress, установите плагин резервного копирования и используйте его для восстановления ваших данных.