2015-03-19 4 views
2

Я создал изображение докера с помощью mysql. Я использую команду VOLUME в Dockerfile, чтобы определить установленный объем:Какие разрешения необходимы для тома хоста докера?

VOLUME ["/var/lib/mysql/"] 

и сказать ему, чтобы установить громкость при работе:

docker run -v /media/user/encrypted/:/var/lib/mysql/ mysql_with_secrets 

[другие параметры опущены для простоты]

Проблема в том, что контейнер не запускается. Контейнер запускается при установке тома с помощью папки в домашнем тракте вместо /media/user/encrypted/. /media/user/encrypted/ - это смонтированный зашифрованный раздел, принадлежащий моему пользователю и корневой группе.

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

Спасибо!

+1

Вам необходимо идентифицировать идентификатор пользователя процесса, выполняющегося внутри контейнера, и проделать путь тома к этому идентификатору пользователя или сделать том глобально доступным (сначала рекомендуется). Если ваш образ (то есть внутренний идентификатор пользователя) изменяется в любой момент, это сломается. – ZeissS

+0

Спасибо, что сработало отлично! Я бы хотел, чтобы вы ответили вместо этого, вместо того чтобы комментировать, чтобы я мог отметить это как принятый ответ. –

+0

Тогда я дал ему ответ. – ZeissS

ответ

1

Необходимо идентифицировать идентификатор пользователя процесса, выполняющегося внутри контейнера, и проделать путь тома к этому идентификатору пользователя или сделать громкость глобальной доступной (сначала рекомендуется). Если ваш образ (то есть внутренний идентификатор пользователя) изменяется в любой момент, это сломается.

Смежные вопросы