Я запускаю докер с установленным каталогом хоста:
$ docker run -v /usr/groups/thing -ti imagename /bin/bash
Файлы в /usr/groups/thing/foo
доступны:
# ls /usr/groups/thing/foo
a b c
Но файлы в /usr/groups/thing/bar
не:
# ls /usr/groups/thing/bar
ls: cannot open directory /usr/groups/thing/bar: Too many levels of symbolic links
Это на Debian, и /usr/groups/thing
- это автоматически смонтированный том NFS.
Это вызвано тем, что каталоги не монтируются автоматически при запуске контейнера. Я думал что /usr/groups/thing
была точкой автоматического монтирования, но очевидно, что подкаталоги автоматически монтируются индивидуально. Решение - убедиться, что каждый из них установлен. перед попадание в контейнер:
$ (cd /usr/groups/thing/foo; cd /usr/groups/thing/bar)
$ docker run -v /usr/groups/thing -ti imagename /bin/bash
# ls /usr/groups/thing/bar
d e f