mysql
Dockerfile объявляет
VOLUME /var/lib/mysql
Это напрямую приводит к ошибке, которую вы видите. (На низком уровне Docker вызывает монтирование тома в этот каталог, как в обычной команде / функции Linux mount
, поэтому вы не можете удалить точку монтирования.)
It также имеет следствие, что производные изображения не могут вносить никаких изменений в это дерево каталогов, поэтому ваш фундаментальный подход здесь не сработает. Если у вас уже есть дерево данных, которое может работать здесь, вы можете использовать опцию docker run -v
, чтобы смонтировать его в контейнер
docker run -v $PWD/db:/var/lib/mysql mysql:5.7
Если у вас просто есть файл дампа, вы можете смонтировать или скопировать его в /docker-entrypoint-initdb.d
; этот механизм описан на странице Docker Hub mysql
image (в разделе «Инициализация экземпляра fre sh»).