При подключении тома в linux результирующая папка в контейнере докера получает те же права, что и папка на хосте.Если папка на хосте принадлежит root, то она будет принадлежать root также внутри контейнера Docker.
Чтобы решить вашу проблему, вы должны изменить владельца $(pwd)/vlc-android
, чтобы он соответствовалидентификатор пользователя, используемый в контейнере (в соответствии с приложенным Dockerfile в вашем вопросе, UID 499).
Попробуйте выполнить это:
sudo chown 499 -R $(pwd)/vlc-android
, затем перезапустите контейнер.
РЕДАКТИРОВАТЬ:
Другое решение будет, если вы 'Вы можете перестроить образ докера на сервере Ubuntu, чтобы заново сгенерировать образ, чтобы использовать идентификатор владельца папки вместо 499.
Вам просто нужно получить идентификатор владельца папки (старайтесь избегать пользователя root):
id $username
и заново создайте образ докера, используя следующую команду:
USER_ID=1000
docker build \
-t my_new_vlc_androing_thingy \
--build-arg VIDEOLAN_CI_UID=${USER_ID} \
.
и запустите его с:
docker run --rm \
-w /vlc-android \
-v $(pwd)/vlc-android:/vlc-android \
my_new_vlc_androing_thingy \
bash -c "ls -ld /vlc-android"