snyk container monitor [<OPTIONS>] [<IMAGE>]
snyk container monitor 명령은 컨테이너 이미지 레이어 및 프로젝트의 종속성을 캡처하고 해당 스냅샷의 취약점을 모니터링하여 결과를 snyk.ioarrow-up-right 로 보냅니다.
프로덕션으로 푸시되는 취약점을 방지하기 위해 프로덕션에 코드를 통합하기 전에 container monitor 명령을 사용하여 모니터링할 코드의 스냅샷을 찍으십시오. 기본값인 매일에서 빈도를 변경하려면 설정에서 테스트 빈도를 선택하십시오.
코드에 변경 사항이 있는 경우 container monitor 명령을 다시 실행해야 합니다.
자세한 내용은 Snyk 컨테이너용 Snyk CLI 를 참조하십시오.
가능한 종료 코드 및 그 의미:
0 : 성공, 이미지 레이어 및 종속성 캡처 2 : 실패, 명령을 다시 실행하십시오. 디버그 로그를 출력하려면 -d를 사용하십시오. 3 : 실패, 지원되는 프로젝트가 감지되지 않았습니다.
환경 변수를 사용하여 Snyk CLI를 구성하고 Snyk API에 연결하기 위한 변수를 설정할 수 있습니다.
컨테이너 명령에 적용되는 환경 변수가 있습니다. Snyk CLI 구성 을 참조하십시오.
디버그 로그를 출력하려면 -d 옵션을 사용하십시오.
특정 Snyk 조직에 연결된 Snyk 명령을 실행하려면 <ORG_ID>를 지정합니다. <ORG_ID>는 일부 기능 가용성 및 개인 테스트 제한에 영향을 미칩니다.
여러 조직이 있는 경우 CLI에서 다음을 사용하여 기본값을 설정할 수 있습니다.
$ snyk config set org=<ORG_ID>
모든 새로 테스트되고 모니터링되는 프로젝트가 기본 조직에서 테스트되고 모니터링되도록 기본값을 설정합니다. 기본값을 재정의해야 하는 경우 --org=<ORG_ID> 옵션을 사용하십시오.
기본값: 계정 설정arrow-up-right 에서 현재 선호하는 조직인 <ORG_ID>
참고: --org=<orgslugname>을 사용할 수도 있습니다. ORG_ID는 CLI와 API 모두에서 작동합니다. 조직 슬러그 이름은 CLI에서는 작동하지만 API에서는 작동하지 않습니다.
orgslugname은 Snyk UI에서 조직 URL에 표시된 슬러그 이름과 일치해야 합니다. https://app.snyk.io/org/[orgslugname]. orgname은 작동하지 않습니다.
자세한 내용은 CLI에서 사용할 조직을 선택하는 방법 문서를 참조하십시오.
--file=<FILE_PATH>
더 자세한 조언을 위해 이미지에 대한 Dockerfile 경로를 포함하십시오.
--project-name=<PROJECT_NAME>
사용자 지정 Snyk 프로젝트 이름을 지정합니다.
--policy-path=<PATH_TO_POLICY_FILE>
.snyk 정책 파일 경로를 수동으로 전달합니다.
결과를 JSON 데이터 구조로 콘솔에 인쇄합니다.
예시: $ snyk container test --json
참고 : 프로젝트 속성을 설정하는 옵션을 사용하고 역할에 프로젝트 속성을 편집할 권한이 없는 경우 monitor 명령이 실패합니다. 진행 방법에 대한 지침은 프로젝트 속성 편집에 필요한 권한 을 참조하십시오.
--target-reference=<TARGET_REFERENCE>
이 프로젝트를 구별하는 참조(예: 분기 이름 또는 버전)를 지정합니다. 동일한 참조를 가진 프로젝트는 해당 참조를 기반으로 그룹화될 수 있습니다.
자세한 내용은 모니터링을 위한 분기 또는 버전별 프로젝트 그룹화 를 참조하십시오.
--project-environment=<ENVIRONMENT>[,<ENVIRONMENT>]...>
프로젝트 환경을 하나 이상의 값(쉼표로 구분)으로 설정합니다. 프로젝트 환경을 지우려면 --project-environment=로 설정합니다.
허용되는 값: frontend, backend, internal, external, mobile, saas, onprem, hosted, distributed
자세한 내용은 프로젝트 속성 을 참조하십시오.
--project-lifecycle=<LIFECYCLE>[,<LIFECYCLE]...>
프로젝트 수명 주기를 하나 이상의 값(쉼표로 구분)으로 설정합니다. 프로젝트 수명 주기를 지우려면 --project-lifecycle=로 설정합니다.
허용되는 값: production, development, sandbox
자세한 내용은 프로젝트 속성 을 참조하십시오.
--project-business-criticality=<BUSINESS_CRITICALITY>[,<BUSINESS_CRITICALITY>]...>
프로젝트 비즈니스 중요도를 하나 이상의 값(쉼표로 구분)으로 설정합니다. 프로젝트 비즈니스 중요도를 지우려면 --project-business-criticality=로 설정합니다.
허용되는 값: critical, high, medium, low
자세한 내용은 프로젝트 속성 을 참조하십시오.
프로젝트 태그를 하나 이상의 값(쉼표로 구분된 키-값 쌍, "=" 구분자 포함)으로 설정합니다.
예시: --project-tags=department=finance,team=alpha
프로젝트 태그를 지우려면 --project-tags=로 설정합니다.
허용되는 문자를 포함한 자세한 내용은 프로젝트 태그 를 참조하십시오.
--project-tags의 별칭입니다.
컨테이너 이미지의 애플리케이션 종속성과 운영 체제의 취약점을 모두 단일 스캔에서 감지할 수 있도록 합니다.
CLI 버전 1.1090.0 (2023-01-24) 이상에서는 Snyk이 기본적으로 이미지의 애플리케이션 종속성을 스캔합니다. --app-vulns 옵션을 지정할 필요가 없습니다.
CLI 버전 1.962.0부터 v1.1089.0까지는 --json 옵션과 함께 --app-vulns 옵션을 사용하여 운영 체제와 애플리케이션 취약점을 결과에서 JSON 형식으로 볼 수 있습니다.
자세한 내용은 컨테이너 이미지의 애플리케이션 취약점 감지arrow-up-right 를 참조하십시오.
--exclude-app-vulns
앱 취약점에 대한 스캔을 비활성화할 수 있습니다. CLI 버전 1.1090.0 (2023-01-24) 이상에서는 app-vulns가 기본적으로 활성화됩니다.
이전 릴리스에서는 --app-vulns와 함께 사용할 수 없습니다.
자세한 내용은 컨테이너 이미지의 애플리케이션 취약점 감지arrow-up-right 를 참조하십시오.
--exclude-node-modules
Node.js 컨테이너 이미지 내 node_modules 디렉토리 스캔을 비활성화할 수 있습니다.
CLI 버전 v1.1292.0 이상에서는 node_modules 스캔이 기본적으로 활성화됩니다.
node_modules 스캔이 비활성화되면 Snyk은 애플리케이션 파일 쌍([package.json, package-lock.json], [package.json, yarn.lock])에서 가져온 npm 프로젝트의 취약점을 보고합니다.
--nested-jars-depth
app-vulns가 활성화된 경우 --nested-jars-depth=n 옵션을 사용하여 Snyk이 압축을 풀 중첩된 jar의 레벨 수를 설정합니다. 깊이는 숫자여야 합니다.
--exclude-base-image-vulns
기본 이미지만으로 도입된 취약점은 표시하지 않습니다. 운영 체제 패키지에만 적용됩니다. snyk container test를 사용할 때만 사용할 수 있습니다. snyk container monitor와의 호환성을 위해 제공됩니다. snyk container monitor와 함께 이 옵션을 사용해도 효과가 없습니다.
다중 아키텍처 이미지의 경우 테스트할 플랫폼을 지정합니다.
지원되는 플랫폼: linux/amd64, linux/arm64, linux/riscv64, linux/ppc64le, linux/s390x, linux/386, linux/arm/v6 또는 linux/arm/v7.
--username=<CONTAINER_REGISTRY_USERNAME>
컨테이너 레지스트리에 연결할 때 사용할 사용자 이름을 지정합니다. Docker가 있는 경우 로컬 Docker 바이너리 자격 증명보다 우선합니다.
--password=<CONTAINER_REGISTRY_PASSWORD>
컨테이너 레지스트리에 연결할 때 사용할 암호를 지정합니다. Docker가 있는 경우 로컬 Docker 바이너리 자격 증명보다 우선합니다.
Docker 이미지 스캔 및 모니터링
$ snyk container monitor <image>