퍼블릭 Docker Hub 콘텐츠 사용 관련 권장사항
Rishi Mukhopadhyay
Product Manager
최신 개발 환경에서 오픈소스 소프트웨어가 확산됨에 따라 사용자 환경에는 Docker Hub에 저장된 퍼블릭 컨테이너 이미지에 대한 종속 항목이 있을 수 있습니다. 이러한 종속 항목은 적절한 구성과 제어가 없을 경우 CI/CD 파이프라인 내에서 보안 및 안정성에 위험을 초래할 수 있습니다. 이 블로그에서는 이러한 위험을 줄이기 위해 팀에서 따를 수 있는 몇 가지 권장사항을 개략적으로 소개합니다.
퍼블릭 컨테이너의 로컬 사본 저장
가능한 경우 퍼블릭 컨테이너의 로컬 사본을 저장하면 최고의 안정성을 확보하고 더욱 강력한 보안 제어를 실현할 수 있습니다. 자세한 내용은 Open Containers Initiative에서 게시한 퍼블릭 콘텐츠 사용 관련 지침을 참조하세요.
인증을 사용하여 Docker Hub에 액세스
Docker Hub에 액세스할 때는 익명으로 하지 말고 인증된 방식으로 액세스하시기 바랍니다. 익명으로 요청하면 보안 위험 외에도 rate limit에 도달할 위험이 있고, 이는 CI/CD 파이프라인의 안정성에 영향을 줄 수 있습니다. 인증에는 CI/CD 인프라 아키텍처 및 사용하는 Google Cloud 서비스에 따라 몇 가지 옵션이 있습니다.
- Artifact Registry 원격 저장소 사용: 빌드 프로세스 내에서 Docker Hub 저장소를 직접 참조하는 대신 Artifact Registry 원격 저장소를 사용하여 Docker Hub로 인증하고 종속 항목의 리전별 캐시를 제공할 수 있습니다. Artifact Registry로 Docker Hub 액세스 토큰을 사용하는 방법에 대한 안내 전문은 Artifact Registry 문서 페이지인 Docker Hub에 대한 원격 저장소 인증 구성에서 확인하세요.
- Cloud Build를 사용하여 Docker 이미지와 상호작용: Cloud Build는 빌드 단계 내에서 Docker Hub 이미지를 가져오기 위한 인증 메커니즘을 제공합니다. Docker Hub 이미지를 사용하여 컨테이너 이미지를 빌드하는 경우 이러한 인증 메커니즘을 사용할 수 있습니다.
다음 Cloud Build 구성 파일은 Secret Manager에 저장된 Docker 사용자 이름과 비밀번호로 Docker에 로그인하고 비공개 이미지를 실행하는 방법을 보여줍니다. Cloud Build를 사용하여 Docker Hub와 상호작용하는 방법에 관한 자세한 내용은 Docker Hub 이미지와 상호작용을 참조하세요.
위에 개략적으로 설명된 권장사항을 따르면 보안 상황을 개선하고 CI/CD 파이프라인 내 안정성 관련 위험을 줄일 수 있습니다. 또한 사용자 환경에 적합한 인증 제어를 구현하여 추후 프로덕션 단계에서 개발을 방해하는 요소를 제거하고 프로세스에서 기업 보안 표준을 충족하거나 초과 달성할 수 있습니다.
다음과 같은 관련 제품 페이지 및 기능도 유용할 수 있습니다.