Moby: Пользователь ldap как имя пользователя докера

Созданный на 16 июл. 2014  ·  3Комментарии  ·  Источник: moby/moby

Параметр -u/--user для docker run полезен только для локальных учетных записей, перечисленных в /etc/passwd . Если хост-система интегрирована с ldap, у пользователей не будет записи в этом файле. Docker не работает, так как не может найти этих пользователей.

В приведенном ниже примере пользователь bhuvan находится в ldap, но запуск докера не позволяет использовать эту учетную запись. Docker должен иметь возможность использовать механизм аутентификации хост-системы.

$ docker run --user=bhuvan --rm -i -t --net host centos:centos6 /bin/bash
2014/07/16 16:45:54 Error response from daemon: Cannot start container 95ef5ab02d7471b509fcaa37c22afe48b04af3c57db5b72264f84136c97bec39: finalize namespace setup user get supplementary groups Unable to find user bhuvan

Самый полезный комментарий

Если вы запускаете докер в учетной записи bhuvan , вы можете войти в контейнер как пользователь bhuvan , установив флаг -u следующим образом:

-u=$(id -u $(whoami)):$(id -g $(whoami))

Обратите внимание, что внутри контейнера вы увидите не имя, а фактические UID и GID.

Все 3 Комментарий

Если вы запускаете докер в учетной записи bhuvan , вы можете войти в контейнер как пользователь bhuvan , установив флаг -u следующим образом:

-u=$(id -u $(whoami)):$(id -g $(whoami))

Обратите внимание, что внутри контейнера вы увидите не имя, а фактические UID и GID.

@bhuvaneswaran Вам необходимо настроить это в своем контейнере. Интеграция с ldap сейчас невозможна.

Интеграция Ldap для Docker может стать возможной в будущем, но пока она не поддерживается. Это должно стать возможным после поддержки плагинов.

@louden Я столкнулся с этой же проблемой несколько лет спустя, и если я попытаюсь передать пользователя, и они будут храниться только в LDAP, а не в / etc / passwd, я не смогу использовать их внутри контейнера даже с вашим фрагментом кода .

К сожалению, я очень сомневаюсь, что наши сетевые администраторы оценили бы, что я создаю локального пользователя (если у меня есть разрешения) и запускаю докер с этим пользователем, просто чтобы обойти тот факт, что он не может запрашивать сетевую аутентификацию для пользователя, у которого нет " существуют "в системе согласно / etc / passwd.

Была ли эта страница полезной?
0 / 5 - 0 рейтинги