Изменения в отображении UID / GID на разных хостах

У меня есть докер контейнер, построенный на одной системе, где uid = 1000 и gid = 300

Затем, когда я пытаюсь использовать этот же контейнер на сервере jenkins, эти uid/gid принимаются разными пользователями и группами, поэтому при попытке выполнить команды в контейнере происходит сбой из-за разрешений.

Как я могу запустить контейнер с пользователями, сопоставленными с правильным uid/gid

1 ответ

Существует несколько вариантов обработки несоответствий uid/gid с томами хоста.

  • открыть права доступа к каталогу хоста, который по понятным причинам часто считается плохим для группы безопасности, но также очень легко сделать.
  • создайте новый образ для каждого хоста, где он может работать с разными uid/gid
  • вместо этого переключитесь на именованные тома. Если вам не нужен прямой доступ к содержимому тома с хоста, это рекомендуется.
  • исправить проблемы с разрешениями с точки входа.

Более подробно о некоторых из них я расскажу в моем выступлении на DockerCon.

Есть также другой пример решения точки входа, в котором я настроил контейнер Jenkins для исправления gid докера, чтобы он соответствовал установленному сокету докера: https://github.com/sudo-bmitch/jenkins-docker

Другие вопросы по тегам