Подключение к монтируемому с привязкой демону Docker внутри contianer - разрешение отклонено - PullRequest
0 голосов
/ 07 мая 2019

Я запускаю контейнер Docker, который сам запускает Docker, и вместо использования образа dind, поскольку для этого требуется priv, я монтирую в контейнер docker.sock хоста. Однако всякий раз, когда я пытаюсь получить доступ к сокету внутри контейнера, я получаю ...

Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get http://%2Fvar%2Frun%2Fdocker.sock/v1.26/containers/json: dial unix /var/run/docker.sock: connect: permission denied

Что я уже сделал:

1) Установлена ​​розетка в контейнер. Из моего скрипта, который запускает контейнер ....

docker run -i -t -v /var/run/docker.sock:/var/run/docker.sock.... 

2) Гарантировано, что мои мои хост-пользователь и контейнер-пользователь имеют одинаковый UID, и что мои host-docker-group и container-docker-group имеют одинаковый GID, и что пользователь в контейнере является участником упомянутой группы ....

С хоста ...

uid=1000(foo) gid=1000(foo) groups=1000(foo),1001(docker)...

Из контейнера:

uid=1000(bar) gid=1000(bar) groups=1000(bar),1001(docker)

3) Я даже гарантировал, что список каталогов для сокетов в хосте и контейнере идентичен

С хоста ....

srw-rw----. 1 1000 1001 system_u:object_r:container_var_run_t:s0 0 May  7 09:15 /var/run/docker.sock

Из контейнера ....

srw-rw----. 1 1000 1001 system_u:object_r:container_var_run_t:s0 0 May  7 13:15 /var/run/docker.sock

Тем не менее, в контейнере, будь то пользователь root или другой пользователь, я получаю сообщение об отказе в разрешении. Будем весьма благодарны за любые предложения по его решению.

...