Как сохранить изменения в boot2docker

Я новичок в Docker и наткнулся на проблему, что мне не удалось найти решения.

Я нахожусь на Mac, поэтому мне нужно использовать Boot2Docker в качестве моей среды. Я делаю все свои вещи внутри виртуальной машины, используя boot2docker ssh, чтобы максимально подражать "реальной" ситуации.

Моя проблема в том, что как только я закрою boot2docker при загрузке boot2docker или остановимся, я потеряю все свои изменения... Как я могу сохранить мои изменения?

То, что я сделал, это создать некоторые каталоги, /opt/sites, например, и добавить код в .profile. Все исчезло, когда я снова запустил boot2docker.

Я попытался поместить все в /Users... поскольку boot2docker 1.3 и выше автоматически монтируют это местоположение, но затем я получаю проблему с использованием --volumes в некоторых контейнерах (более конкретно, контейнеры MySQL...)

Я думаю, что могу решить проблему хранения данных (проблема с проблемами), но где я могу поместить определение PATH и других переменных среды?

Возможно, я что-то недопонимаю, поэтому, пожалуйста, указывайте мне в правильном направлении; -)

Ответы

Ответ 1

После внесения изменений в образ boot2docker запустите команду "boot2docker save". Вы должны увидеть, что ваши изменения сохраняются после перезагрузки boot2docker.

Ответ 2

Если вы используете Docker Toolbox, вы используете docker-machine вместо boot2docker. К сожалению, эквивалент boot2docker save для docker-machine, как указано в Миграция с Boot2Docker на Docker Machine.

Вместо этого вы должны использовать файл /var/lib/boot2docker/profile внутри вашей загрузочной виртуальной машины, чтобы сохранить начальный script, который запускается каждый раз, когда перезагружается перезагрузка VM. Подробнее см. этот вопрос github.

Ответ 3

Контейнеры докеров не имеют гражданства. Если контейнер завершен или перезапущен, содержимое контейнера будет возвращено в исходное состояние, то есть все изменения, произошедшие внутри контейнера во время его запуска, исчезнут.

Вы можете сохранить или экспортировать отредактированное изображение или использовать тома.