Я пытаюсь использовать Docker для контейнерирования базы данных MySQL (фактически MariaDB).Я понял, как хранить данные MySQL (/ var / lib / mysql) в томе, смонтированном из каталога хоста.
Однако, поскольку базовая файловая система отличается от хоста к хосту, существуют некоторые несоответствия, например, имена таблиц нечувствительны к регистру в NTFS (Windows).Кроме того, похоже, что если база данных создана на хосте Linux, она не работает на хосте Windows (не выяснил, почему именно).
Поэтому я хочу сохранить данные на дискеобраз и смонтировать его внутри контейнера, т.е. db-data.img
в формате ext4.Но я сталкиваюсь со странной проблемой, когда монтирую этот образ внутри контейнера:
$ docker run -v $PWD:/outside --rm -it ubuntu /bin/bash
# dd if=/dev/zero of=/test.img bs=1M count=100
# mkfs.ext4 test.img
# mount -o loop -t ext4 test.img /mnt
mount: /mnt: mount failed: Operation not permitted.
Использование другого каталога вместо /mnt
также не работает.
Почему он отказывается монтировать файл img?