소개
이 랩에서는 컨테이너 이미지 저장소에 Docker Scout 을 활성화하는 방법을 배우게 됩니다. Docker Scout 은 이미지에 대한 귀중한 보안 통찰력을 제공하여 취약점 및 공급망 위험을 식별하는 데 도움을 줍니다.
특정 저장소, 조직 내의 모든 저장소, 필터와 일치하는 저장소, 특정 레지스트리의 저장소에 대해 Docker Scout 을 활성화하는 등 Docker Scout 을 활성화하는 다양한 방법을 살펴보겠습니다. 이러한 실습을 통해 docker scout repo enable 명령의 유연성과 강력함을 보여드리겠습니다.
특정 저장소에 Docker Scout 활성화
이 단계에서는 특정 저장소에 Docker Scout 을 활성화하는 방법을 배우게 됩니다. Docker Scout 은 컨테이너 이미지의 보안 상태를 이해하는 데 도움을 줍니다. 저장소에 Docker Scout 을 활성화하면 취약점, 공급망 위험 및 기타 보안 문제에 대한 통찰력을 얻을 수 있습니다.
먼저 Docker 가 설치되어 실행 중인지 확인해 보겠습니다. 다음 명령을 실행하여 확인할 수 있습니다.
docker version
Docker 버전 정보를 보여주는 출력을 확인해야 합니다. 오류가 표시되면 Docker 가 설치되지 않았거나 실행 중이 아님을 의미합니다. LabEx 환경에는 이미 Docker 가 설치되어 있으므로 이 명령이 작동해야 합니다.
이제 이 단계에서 사용할 샘플 이미지를 가져와 보겠습니다. Docker Hub 에서 hello-world 이미지를 사용합니다.
docker pull hello-world
이 명령은 hello-world 이미지를 로컬 머신으로 다운로드합니다. 다운로드 진행 상황과 완료를 나타내는 출력을 확인해야 합니다.
특정 저장소에 Docker Scout 을 활성화하려면 docker scout repo enable 명령을 사용할 수 있습니다. 기본 구문은 다음과 같습니다.
docker scout repo enable <repository>
<repository>를 Docker Scout 을 활성화하려는 저장소의 이름으로 바꿉니다. 이 경우 hello-world 이미지에 대해 활성화합니다.
docker scout repo enable docker.io/library/hello-world
이 명령을 실행한 후, Docker Scout 이 지정된 저장소에 대해 활성화되었음을 확인하는 출력을 확인해야 합니다. 이 명령은 저장소를 Docker Scout 에 등록하여 보안 취약점 및 기타 문제에 대해 이미지를 분석할 수 있도록 합니다.
조직 내 모든 저장소에 Docker Scout 활성화
이 단계에서는 특정 조직 내의 모든 저장소에 Docker Scout 을 활성화하는 방법을 배우게 됩니다. Docker Hub 와 같은 레지스트리에서 단일 조직으로 관리되는 모든 이미지에 대한 보안 통찰력을 얻고 싶을 때 유용합니다.
조직 내의 모든 저장소에 Docker Scout 을 활성화하려면 --org 플래그와 함께 docker scout repo enable 명령을 사용할 수 있습니다. 기본 구문은 다음과 같습니다.
docker scout repo enable --org <organization>
<organization>을 Docker Scout 을 활성화하려는 조직의 이름으로 바꿉니다.
참고: 이 랩 환경에서는 실제 Docker Hub 조직이 구성되어 있지 않으므로 자리 표시자 조직 이름을 사용합니다. 실제 시나리오에서는 your-organization-name을 실제 Docker Hub 조직 이름으로 바꿉니다.
데모 목적으로 자리 표시자 조직 이름으로 my-docker-org를 사용해 보겠습니다.
docker scout repo enable --org my-docker-org
이 명령을 실행한 후, Docker Scout 이 지정된 조직 내의 모든 저장소에 대해 활성화되었음을 나타내는 출력을 확인해야 합니다. 이 작업은 Docker Scout 에게 해당 조직 아래의 저장소에 푸시된 모든 이미지를 모니터링하고 분석하도록 지시합니다.
조직이 모니터링을 위해 추가되었는지 확인하려면 docker scout repo ls 명령을 사용하여 활성화된 저장소 및 조직을 나열할 수 있습니다.
docker scout repo ls
출력에 my-docker-org가 나열되어 Docker Scout 이 이제 이 조직 내의 저장소를 모니터링하도록 구성되었음을 나타냅니다.
필터를 사용하여 Docker Scout 활성화 (저장소)
이 단계에서는 특정 필터와 일치하는 저장소에 Docker Scout 을 활성화하는 방법을 배우게 됩니다. 이를 통해 저장소 이름의 패턴을 기반으로 저장소의 하위 집합에 대한 모니터링을 선택적으로 활성화할 수 있습니다.
필터와 일치하는 저장소에 Docker Scout 을 활성화하려면 --filter 플래그와 함께 docker scout repo enable 명령을 사용할 수 있습니다. 기본 구문은 다음과 같습니다.
docker scout repo enable --filter <filter>
<filter>를 일치시키려는 패턴으로 바꿉니다. 필터는 와일드카드 (*) 를 사용하여 여러 문자를 일치시킬 수 있습니다.
이 예제에서는 자리 표시자 조직 my-docker-org에 web-으로 시작하는 여러 저장소가 있다고 가정해 보겠습니다. 이 모든 저장소에 대해 Docker Scout 을 활성화하려고 합니다.
docker scout repo enable --org my-docker-org --filter "web-*"
이 명령은 이름이 web-으로 시작하는 my-docker-org 조직 내의 모든 저장소에 대해 Docker Scout 을 활성화합니다.
Docker Scout 이 모니터링하는 저장소 및 필터를 확인하려면 docker scout repo ls 명령을 사용할 수 있습니다.
docker scout repo ls
이제 이전 단계에서 활성화한 조직 my-docker-org 외에도 출력에 필터 my-docker-org/web-*가 나열되어야 합니다. 이는 Docker Scout 이 지정된 조직 내에서 이 패턴과 일치하는 저장소를 모니터링하도록 구성되었음을 나타냅니다.
특정 레지스트리에서 저장소에 Docker Scout 활성화
이 단계에서는 Docker Hub 가 아닌 특정 컨테이너 레지스트리에 있는 저장소에 Docker Scout 을 활성화하는 방법을 배우게 됩니다. 이는 개인 레지스트리 또는 다른 공용 레지스트리를 사용하는 경우 중요합니다.
특정 레지스트리의 저장소에 Docker Scout 을 활성화하려면 저장소 경로에 레지스트리 이름을 포함해야 합니다. 기본 구문은 다음과 같습니다.
docker scout repo enable <registry>/<repository>
<registry>를 컨테이너 레지스트리의 주소로 바꾸고 <repository>를 해당 레지스트리 내의 저장소 이름으로 바꿉니다.
이 예제에서는 myregistry.example.com에 위치한 가상의 레지스트리에 my-app이라는 저장소가 있다고 가정해 보겠습니다.
먼저, 이 시나리오를 시뮬레이션하기 위해 다른 레지스트리에서 샘플 이미지를 가져오겠습니다. registry.hub.docker.com (이는 docker.io와 동일하지만, 레지스트리를 지정하는 것을 보여주기 위해 전체 이름을 사용합니다) 에서 alpine 이미지를 사용합니다.
docker pull registry.hub.docker.com/library/alpine
이 명령은 지정된 레지스트리에서 alpine 이미지를 가져옵니다.
이제, 레지스트리를 명시적으로 지정하여 이 이미지에 대해 Docker Scout 을 활성화해 보겠습니다.
docker scout repo enable registry.hub.docker.com/library/alpine
이 명령을 실행한 후, Docker Scout 이 지정된 레지스트리의 지정된 저장소에 대해 활성화되었음을 확인하는 출력을 확인해야 합니다.
특정 레지스트리의 저장소가 모니터링을 위해 추가되었는지 확인하려면 docker scout repo ls 명령을 사용하여 활성화된 저장소 및 조직을 나열할 수 있습니다.
docker scout repo ls
출력에 registry.hub.docker.com/library/alpine이 나열되어 Docker Scout 이 이제 지정된 레지스트리에서 이 저장소를 모니터링하도록 구성되었음을 나타냅니다.
요약
이 랩에서는 docker scout repo enable 명령을 사용하여 저장소에 Docker Scout 을 활성화하는 방법을 배웠습니다. docker scout repo enable <repository> 구문을 사용하여 특정 저장소에 Docker Scout 을 활성화하는 것으로 시작하여 hello-world 이미지를 사용하여 이를 시연했습니다. 이 프로세스는 보안 분석을 위해 Docker Scout 에 저장소를 등록합니다.
또한 이 기능을 여러 저장소로 확장하는 방법을 탐구하여 조직 내의 모든 저장소, 특정 필터와 일치하는 저장소, 특정 레지스트리에 있는 저장소에 대해 Docker Scout 을 활성화하는 시나리오를 다루었습니다. 이러한 방법은 다양한 저장소 구성에서 보안 검사를 효율적으로 관리할 수 있도록 합니다.



