Я думаю, что это более важно для случая, когда кто-то может зависеть от конкретного числового идентификатора пользователя, возможно, для ввода данных в контейнер.
# this needs to be readable by the container process
# it runs as non-root user "www-data"
# we think its uid is 18
sudo chown -R 18 data
sudo docker run -v ./data:/data -p 8888:80 imagename
Теперь, если из-за изменений в базовом изображении вне контроля автора изображения или конечного пользователя, adduser
делает uid чем-то другим, рецепты, подобные этому, сломаются (хост не имеет прямого способа увидеть контейнер /etc/passwd
файл, чтобы узнать, какой будет фактический uid).
Чтобы обойти , что , вам, возможно, понадобится такой рецепт:
# may or may not work to get the uid
CONTAINER_UID=$(sudo docker run --rm imagename id -u)
sudo chown -R "$CONTAINER_UID" data