freeipa에서 Docker 그룹을 관리하는 방법은 무엇입니까?

freeipa에서 Docker 그룹을 관리하는 방법은 무엇입니까?

먼저 freeipa에서 dockerroot를 관리하려고 했습니다 sudo getent group | grep dock. .

Freeipa에서 동일한 GID를 사용하여 그룹을 생성하면 로컬 그룹과 동기화된다는 것을 어딘가에서 보았습니다.

이것은 나에게 선택 사항이 아닙니다. dockerroot여러 컴퓨터에 이 그룹이 있습니다 .다른GID.

그래서 나는 돌아섰다 sss_override.

나는 이것을 시도했지만 sudo sss_override group-add dockerroot -g <my_freeipa_gid>다음과 같은 결과를 얻었습니다.

Unable to find group dockerroot@[unknown].

누락된 내용이 있으면 설명서에서 찾을 수 없습니다. 사용하려고 하는데 dockerroot@localhost다음과 같은 결과가 나타납니다.

Unable to parse name dockerroot@localhost.

나는 머신에 docker를 배포하기 시작했고 몇몇 사용자가 sudo 없이 docker를 실행할 수 있기를 원했습니다. 각 대상 컴퓨터에 규칙을 만들고 싶지 않습니다. docker를 사용하여 새 시스템을 시작할 때마다 특수 사용자는 freeipa 규칙을 통해 자동으로 그룹 멤버십을 얻어야 합니다.

진행 중인 작업이 yum remove docker && yum install docker팀에도 영향을 미치지 않는 것 같습니다.

삭제하고 다시 만들 수 있나요? 여기서 내가 무엇을 망치고 있는지 모르기 때문에 더 많은 일을 하기가 망설여집니다.


이제 이 작업을 수행하기 위해 docker의 문서를 따라해 보았습니다.

sudo groupadd docker
sudo usermod -aG docker $USER
docker run hello-world

내 도메인에서 사용하고 싶어서 freeipa에 그룹을 만들고 여기에 내 사용자를 추가합니다. 시간 동기화를 제공하고 로그아웃했다가 로그인한 다음 그룹을 확인했습니다.

sudo getent group docker
docker:*:<my_freeipa_id>:<my_uid>

하지만 내 허가는 여전히 거부되었습니다.

답변1

이 그룹이 있으므로 dockerrootRedHat/CentOS에서 제공하는 Docker 패키지를 사용하고 있다고 가정합니다.

문제는 RedHat이 기본적으로 그룹 사용을 위한 Docker를 제공하지 않는다는 것입니다. 확인하려면 소켓 파일(기본 위치 /var/run/docker.sock)에 대한 권한을 확인하세요.

/etc/docker/daemon.json사용하려는 그룹 권한으로 Docker 소켓을 생성하려면 Docker 구성(기본값)을 변경해야 합니다 . 필요한 그룹 권한으로 소켓 파일을 생성하기만 하면 어떤 그룹이든 사용할 수 있습니다. daemon.json 구성 파일에 대한 공식 문서

이 Bugzilla 티켓기본 권한이 루트가 아닌 그룹의 Docker 실행을 허용하지 않는 이유에 대한 설명이 있습니다.

관련 정보