Red Hat Network 서브 스크립 션의 yum은 rhel Docker 이미지에서 어떻게 작동합니까?


10

Red Hat Enterprise Linux 7에는 Docker 컨테이너 실행에 대한 공식 지원이 포함되어 있으며 Red Hat은 일련의 공식 rhel Docker 이미지를 제공합니다. 이 이미지의 흥미로운 기능은 컨테이너 내에서 구성을 수행하지 않고도 호스트의 Red Hat Network 서브 스크립 션을 통해 패키지를 설치할 수 있다는 것입니다.

https://access.redhat.com/articles/881893#createimage 를 인용 하려면 :

"현재 Red Hat Docker 릴리즈의 경우, Red Hat에서 가져온 기본 RHEL 7 Docker 이미지는 호스트 시스템에서 사용 가능한 RHEL 7 인 타이틀먼트를 사용할 수 있습니다. 따라서 Docker 호스트가 올바르게 구독되고 리포지토리가있는 한 컨테이너에 원하는 소프트웨어를 설치하고 Docker 호스트에서 인터넷에 액세스 할 수 있도록하려면 RHEL 7 소프트웨어 저장소에서 패키지를 설치할 수 있어야합니다. "

내 관심사는 이것이 달성되는 메커니즘이 다소 불투명하다는 것입니다. 예를 들어 rhel7.1 이미지로 새 컨테이너를 시작할 때 yum install foohttp 프록시 환경 변수를 구성하지 않고도 실행할 수 있습니다. 이 메커니즘을 이해하지 못하면 시스템 관리자는 호스트 시스템, Docker 데몬 및 실행중인 컨테이너 간의 알 수없는 상호 작용에 영향을 줄 수 있습니다. 이것은 또한 호스트와 컨테이너 사이의 정상적인 격리가 어떤 방식 으로든 (양호한 방식으로) 손상되었음을 시사합니다.

요점을 밝히려면 :이 서브 스크립 션 지원은 어떻게 이루어지며 서브 스크립 션 네트워크를 통해 Red Hat이 제공하는 Docker 데몬의 사용자 정의 빌드에 의존합니까?



감사합니다 @michael. 불행히도 개인적으로 Red Hat 서브 스크립 션 계정이 없기 때문에 해당 사이트에 게시 된 답변에 액세스 할 수 없습니다. (내 고용주가 사용하는 계정은 조직 내 다른 직원이 보유하고 있습니다). 조직에서 관련 액세스 권한이있는 사람이이 KB 답변의 사본을 제공 할 수 있는지 확인하겠습니다.
Leynos

@ 마이클 당신은 답변 imho로 의견을 게시해야합니다.
Bram

@MichaelHampton Red Hat 사이트에서 답변을 읽을 수있는 기회를 얻었습니다. 여기에 게시 된 답변에서 문제의 기능은 Red Hat의 사용자 정의 버전의 Docker 데몬에 따라 다릅니다.
Leynos

답변:


4

Red Hat은 docker권한 정보가 실행될 때 컨테이너에 자격 정보를 마운트하는 'secrets'패치라는 패치를 가지고 있습니다.

projectatomic / docker repo 에서 패치에 대한 자세한 설명과 업스트림 PR 링크를 확인할 수 있습니다 .

https://github.com/projectatomic/docker/tree/docker-1.13.1-rhel#add-rhel-super-secrets-patchpatch

전달 된 모든 패치 정보를 보려면 분기 중 하나를 선택해야합니다 (링크는 'docker-1.3.1-rhel'분기로 이동).


따라서 Red Hat이 제공 한 Docker가 아닌 Docker CE 시도 (경로가없는)를 사용하면 yumDocker 빌드 내에 권한 정보와 명령이 없거나 Docker 이미지가 실패합니까?
Raedwald

2

Red Hat Satellite가 관리하는 가상 머신에 라이센스가 부여 된 방법을 알고 @Leynos의 의견을 따름으로써 virt-who, 가상화 호스트 (vSphere, KVM 등)와 대화하고이를 쿼리하는 서비스 인와 유사한 것이있을 것으로 예상 됩니다. VM의 세부 사항을 찾으십시오. 그런 다음 VM이 호스트의 데이터 센터 라이센스를 사용할 수 있도록 Satellite에서 필요한 API 호출을 수행합니다.

Red Hat docker 데몬은 비슷한 것을 제공하여 컨테이너가 구독 된 Docker 호스트에서 실행 중임을 알 수 있으므로 해당 구독을 사용할 수 있습니다.

또한 여기에서 :

중요 :이 주제에 설명 된대로 docker 명령을 사용하여 컨테이너를 실행하면 RHEL 원자 호스트 시스템을 등록하고 구독을 첨부 할 필요가 없습니다. 그러나 컨테이너 내에서 yum install 명령을 실행하려면 컨테이너가 RHEL Atomic Host에서 유효한 구독 정보를 가져와야합니다. 그렇지 않으면 실패합니다.

따라서 컨테이너 또는 데몬에 호스트를 쿼리하여 구독 정보 (및 아마도 리포 정보)를 찾을 수있는 것이 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.