2.4. CI 파이프라인 통합


이러한 절차를 완료한 후 다음 단계는 CI 파이프라인과 통합하는 것입니다.

각 CI 시스템에는 약간 다른 구성이 필요할 수 있습니다.

2.4.1. Jenkins 사용

Jenkins와 통합하려면 StackRox Container Image Scanner Jenkins 플러그인을 사용합니다. 이 플러그인은 Jenkins 자유 스타일 프로젝트와 파이프라인 모두에서 사용할 수 있습니다.

2.4.2. CircleCI 사용

Red Hat Advanced Cluster Security for Kubernetes를 CircleCI와 통합할 수 있습니다.

사전 요구 사항

  • 이미지 리소스에 대한 읽기쓰기 권한이 있는 토큰이 있습니다.
  • Docker Hub 계정의 사용자 이름과 암호가 있습니다.

프로세스

  1. CircleCI에 로그인하고 기존 프로젝트를 열거나 새 프로젝트를 생성합니다.
  2. 프로젝트 설정을 클릭합니다.
  3. 환경 변수를 클릭합니다.
  4. 변수 추가를 클릭하고 다음 세 가지 환경 변수를 생성합니다.

    • Name:STACKROX_CENTRAL_HOST - Central의 DNS 이름 또는 IP 주소입니다.
    • Name:ROX_API_TOKEN - Red Hat Advanced Cluster Security for Kubernetes에 액세스하는 API 토큰입니다.
    • Name:DOCKERHUB_PASSWORD - Docker Hub 계정의 암호입니다.
    • Name:DOCKERHUB_USER - Docker Hub 계정의 사용자 이름입니다.
  5. CircleCI 구성 파일이 없는 경우 선택한 프로젝트에 대한 로컬 코드 리포지토리의 루트 디렉터리에 .circleci 라는 디렉터리를 생성합니다.
  6. .circleci 디렉터리에 다음 행을 사용하여 config.yml 구성 파일을 생성합니다.

    version: 2
    jobs:
      check-policy-compliance:
        docker:
          - image: 'circleci/node:latest'
            auth:
              username: $DOCKERHUB_USER
              password: $DOCKERHUB_PASSWORD
        steps:
          - checkout
          - run:
              name: Install roxctl
              command: |
                  curl -H "Authorization: Bearer $ROX_API_TOKEN" https://$STACKROX_CENTRAL_HOST:443/api/cli/download/roxctl-linux -o roxctl && chmod +x ./roxctl
          - run:
              name: Scan images for policy deviations and vulnerabilities
              command: |
                  ./roxctl image check --endpoint "$STACKROX_CENTRAL_HOST:443" --image "<your_registry/repo/image_name>" 1
          - run:
              name: Scan deployment files for policy deviations
              command: |
                  ./roxctl image check --endpoint "$STACKROX_CENTRAL_HOST:443" --image "<your_deployment_file>" 2
                  # Important note: This step assumes the YAML file you'd like to test is located in the project.
    workflows:
      version: 2
      build_and_test:
        jobs:
          - check-policy-compliance
    1
    & lt;your_registry/repo/image_name&gt;을 레지스트리 및 이미지 경로로 바꿉니다.
    2
    & lt;your_deployment_file& gt;을 배포 파일의 경로로 바꿉니다.
    참고

    리포지토리에 CircleCI에 대한 config.yml 파일이 이미 있는 경우 기존 구성 파일에 지정된 세부 정보가 포함된 새 작업 섹션을 추가합니다.

  7. 구성 파일을 리포지토리에 커밋한 후 CircleCI 대시보드의 작업 대기열로 이동하여 빌드 정책 시행을 확인합니다.
Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

© 2024 Red Hat, Inc.