· Quiet Stack · Разработка · 1 мин чтения
Контейнеры и данные: что останется после перезапуска
Почему приложение, его образ и пользовательские файлы стоит рассматривать отдельно.

Контейнер помогает упаковать приложение с его окружением. Но удобный запуск ещё не означает, что пользовательские данные сохраняются и копируются правильно. Для небольшого проекта важно заранее определить границы хранения.
Образ описывает приложение
Образ содержит файлы, нужные для запуска. Его обычно можно загрузить снова или собрать из исходников. Не стоит полагаться на запись важных пользовательских данных только во внутреннюю файловую систему временного контейнера.
Данные требуют отдельного места
Постоянное хранилище задают через тома или привязанные каталоги. Выбор зависит от приложения и вашей схемы обслуживания. Запишите, какие пути нужно сохранять, кто владеет файлами и как создать согласованную копию.
Обновляйте проверяемыми шагами
Перед обновлением сохраните конфигурацию и данные рекомендуемым способом. Прочитайте примечания к версии, особенно если обновление меняет формат базы. Затем проверьте не только запуск контейнера, но и основную функцию приложения.
Откат — это тоже процедура
Возврат к старому образу не всегда возвращает старый формат данных. Поэтому план отката должен учитывать и состояние хранилища. Для маленького сервиса достаточно короткой инструкции: что сохранить, как проверить и как восстановить предыдущую рабочую версию.
Механизмы хранения описаны в документации Docker. Независимо от выбранного движка полезно придерживаться одного принципа: приложение можно пересоздать, а важные данные нужно уметь восстановить.
