자습서: Image Builder 콘솔 마법사의 출력 Docker 컨테이너 이미지를 사용하여 이미지 파이프라인 생성 - EC2Image Builder

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

자습서: Image Builder 콘솔 마법사의 출력 Docker 컨테이너 이미지를 사용하여 이미지 파이프라인 생성

이 자습서에서는 이미지 파이프라인 생성 콘솔 마법사를 사용하여 사용자 지정된 EC2 Image Builder Docker 이미지를 빌드하고 유지 관리하기 위한 자동화된 파이프라인을 생성하는 방법을 안내합니다. 단계를 효율적으로 진행할 수 있도록 기본 설정이 있을 때는 기본 설정을 사용하고 선택 사항인 섹션은 생략했습니다.

1단계: 파이프라인 세부 정보 지정

  1. 에서 EC2 Image Builder 콘솔을 엽니다 https://console.aws.amazon.com/imagebuilder/.

  2. 파이프라인 생성을 시작하려면 이미지 파이프라인 생성을 선택하십시오.

  3. 일반 섹션에 파이프라인 이름(필수)을 입력합니다.

  4. 빌드 일정 섹션에서 일정 옵션 기본값을 유지할 수 있습니다. 기본 일정에 표시된 시간대는 협정 세계시 (UTC) 라는 점에 유의하십시오. UTC시간에 대한 자세한 내용과 시간대의 오프셋을 찾으려면 시간대 약어 — 전 세계 목록을 참조하십시오.

    종속성 업데이트 설정의 경우, 종속성 업데이트가 있는 경우 예약된 시간에 파이프라인 실행 옵션을 선택하십시오. 이 설정을 사용하면 파이프라인이 빌드를 시작하기 전에 업데이트를 확인합니다. 업데이트가 없는 경우, 예약된 파이프라인 빌드를 건너뛰게 됩니다.

    참고

    파이프라인이 종속성 업데이트와 빌드를 예상대로 인식하도록 하려면, 기본 이미지와 구성 요소에 시맨틱 버전 관리(x.x.x)를 사용해야 합니다. Image Builder 리소스의 시맨틱 버전 관리에 대한 자세한 내용은 Image Builder의 시맨틱 버전 관리(을)를 참조하십시오.

  5. 다음을 선택하여 다음 단계로 계속합니다.

2단계: 레시피 선택

  1. Image Builder는 레시피 섹션의 기존 레시피 사용을 기본값으로 설정합니다. 처음인 경우, 새 레시피 생성 옵션을 선택하십시오.

  2. 이미지 유형 섹션에서 Docker 이미지 옵션을 선택하여 Docker 이미지를 생성하고 대상 지역의 Amazon ECR 리포지토리에 배포할 컨테이너 파이프라인을 생성합니다.

  3. 일반 섹션에 다음과 같은 필수 상자를 입력합니다.

    • 이름 – 레시피 이름

    • 버전 — 레시피 버전(<major>.<minor>.<patch> 형식을 사용하십시오. 여기에서 major, minor, patch는 정수 값입니다.) 새 레시피는 일반적으로 1.0.0로 시작합니다.

  4. 소스 이미지 섹션에서 이미지 선택, 이미지 운영 체제(OS)이미지 출처를 기본값으로 유지합니다. 그러면 Amazon에서 관리하는 Amazon Linux 2 컨테이너 이미지 목록이 생성되며 기본 이미지로 선택할 수 있습니다.

    1. 이미지 이름 드롭다운에서 이미지를 선택합니다.

    2. 자동 버전 관리 옵션(사용 가능한 최신 OS 버전 사용)의 기본값을 유지합니다.

      참고

      이 설정을 사용하면 파이프라인이 기본 이미지에 대한 시맨틱 버전 관리를 사용하여 자동으로 예약된 작업에 대한 종속성 업데이트를 감지할 수 있습니다. Image Builder 리소스의 시맨틱 버전 관리에 대한 자세한 내용은 Image Builder의 시맨틱 버전 관리(을)를 참조하십시오.

  5. 구성 요소 섹션에서 하나 이상의 빌드 구성 요소를 선택해야 합니다.

    빌드 구성 요소 – Amazon Linux 패널에서 페이지에 나열된 구성 요소를 탐색할 수 있습니다. 오른쪽 상단의 페이지 매김 제어를 사용하여 기본 이미지 OS에 사용할 수 있는 추가 구성 요소를 탐색할 수 있습니다. 또한 구성 요소 관리자를 사용하여 특정 구성 요소를 검색하거나 자체 빌드 구성 요소를 만들 수 있습니다.

    이 자습서에서는 다음과 같이 Linux를 최신 보안 업데이트로 업데이트하는 구성 요소를 선택하십시오.

    1. 패널 상단에 있는 검색 창에 update 단어를 입력하여 결과를 필터링합니다.

    2. update-linux 빌드 구성 요소의 확인란을 선택합니다.

    3. 아래로 스크롤하여 선택한 구성 요소 목록의 오른쪽 상단에서 모두 확장을 선택합니다.

    4. 버전 관리 옵션(사용 가능한 최신 OS 버전 사용)의 기본값을 유지합니다.

      참고

      이 설정을 사용하면 파이프라인이 선택한 구성 요소에 대한 시맨틱 버전 관리를 사용하여, 자동으로 예약된 작업에 대한 종속성 업데이트를 감지할 수 있습니다. Image Builder 리소스의 시맨틱 버전 관리에 대한 자세한 내용은 Image Builder의 시맨틱 버전 관리(을)를 참조하십시오.

      입력 파라미터가 있는 구성 요소를 선택한 경우 이 영역에 파라미터도 표시됩니다. 이 자습서에서는 파라미터를 다루지 않습니다. 구성 요소의 입력 파라미터 사용 및 레시피에서 입력 파라미터를 설정하는 방법에 대한 자세한 내용은 자습서: 입력 매개 변수를 사용하여 사용자 지정 구성 요소 만들기 섹션을 참조하십시오.

    구성 요소 재정렬(선택 사항)

    이미지에 포함할 구성 요소를 두 개 이상 선택한 경우, drag-and-drop 작업을 사용하여 빌드 프로세스 중에 실행해야 하는 순서로 구성 요소를 재배열할 수 있습니다.

    참고

    CIS구성 요소 강화는 Image Builder 레시피의 표준 구성 요소 순서 지정 규칙을 따르지 않습니다. 벤치마크 테스트가 출력 이미지에 대해 실행되도록 하기 위해 CIS 강화 구성 요소는 항상 마지막에 실행됩니다.

    1. 다시 위로 스크롤하여 사용 가능한 구성 요소 목록을 확인하십시오.

    2. update-linux-kernel-mainline 빌드 구성 요소(또는 원하는 다른 구성 요소)의 확인란을 선택합니다.

    3. 선택한 구성 요소 목록으로 스크롤하여 결과가 두 개 이상 있는지 확인합니다.

    4. 새로 추가된 구성 요소의 버전이 확장되지 않을 수 있습니다. 버전 관리 옵션을 확장하려면 버전 관리 옵션 옆의 화살표를 선택하거나 모두 확장을 토글해서 선택한 모든 구성 요소의 버전 관리를 확장할 수 있습니다.

    5. 구성 요소 중 하나를 선택하고 위 또는 아래로 드래그하여 구성 요소가 실행되는 순서를 변경합니다.

    6. 구성 요소를 제거하려면, update-linux-kernel-mainline 구성 요소 상자의 오른쪽 X 상단에서 선택합니다.

    7. 이전 단계를 반복하여 추가했을 수 있는 다른 구성 요소를 모두 제거하고 해당 update-linux 구성 요소만 선택합니다.

  6. Dockerfile 템플릿 섹션에서 예제 사용 옵션을 선택합니다. 콘텐츠 패널에서 Image Builder가 내 컨테이너 이미지 레시피에 따라 빌드 정보 또는 스크립트를 배치하는 상황적 변수가 있는 것을 볼 수 있습니다.

    기본적으로 Image Builder는 Dockerfile에서 다음과 같은 컨텍스트 변수를 사용합니다.

     

    parentImage (필수)

    빌드 시 이 변수는 레시피의 기본 이미지로 변환됩니다.

    예시

    FROM {{{ imagebuilder:parentImage }}}
    환경 (구성 요소가 지정된 경우 필요)

    이 변수는 구성 요소를 실행하는 스크립트로 해석됩니다.

    예시

    {{{ imagebuilder:environments }}}
    구성 요소 (선택 사항)

    Image Builder는 컨테이너 레시피에 포함된 구성 요소의 빌드 및 테스트 구성 요소 스크립트를 해결합니다. 이 변수는 Dockerfile에서 환경 변수 다음에 어디에나 배치할 수 있습니다.

    예시

    {{{ imagebuilder:components }}}
  7. Target 리포지토리 섹션에서 이 자습서의 사전 요구 사항으로 생성한 Amazon ECR 리포지토리의 이름을 지정합니다. 이 리포지토리는 파이프라인이 실행되는 리전(리전 1)에서 배포 구성의 기본 설정으로 사용됩니다.

    참고

    배포 전에 대상 리포지토리가 모든 ECR 대상 지역의 Amazon에 있어야 합니다.

  8. 다음을 선택하여 다음 단계로 계속합니다.

3단계: 인프라 구성 정의 - 선택 사항

Image Builder는 계정에서 EC2 인스턴스를 시작하여 이미지를 사용자 지정하고 검증 테스트를 실행합니다. 인프라 구성 설정은 서버에서 실행할 인스턴스에 대한 인프라 세부 정보를 지정합니다. AWS 계정 빌드 프로세스 중.

인프라 구성 섹션에서 구성 옵션Create infrastructure configuration using service defaults‬(이)가 기본값으로 설정됩니다. 그러면 빌드 인스턴스가 컨테이너 이미지를 구성하는 데 사용하는 IAM 역할 및 관련 인스턴스 프로필이 생성됩니다. 고유의 사용자 지정 인프라 구성을 생성하거나 이미 생성한 설정을 사용할 수도 있습니다. 인프라 구성 설정에 대한 자세한 내용은 EC2Image Builder API 레퍼런스를 참조하십시오 CreateInfrastructureConfiguration.

이 자습서에서는 기본 설정을 사용합니다.

  • 다음을 선택하여 다음 단계로 계속합니다.

4단계: 배포 설정 정의 - 선택 사항

배포 설정은 대상 지역과 대상 Amazon ECR 리포지토리 이름으로 구성됩니다. 출력 Docker 이미지는 각 지역의 지정된 Amazon ECR 리포지토리에 배포됩니다.

배포 설정 섹션의 구성 옵션은 기본적으로 Create distribution settings using service defaults(으)로 설정됩니다. 이 옵션은 파이프라인이 실행되는 지역 (지역 1) 의 컨테이너 레시피에 지정된 Amazon ECR 리포지토리에 출력 Docker 이미지를 배포합니다. 원하는 Create new distribution settings 경우 현재 지역의 ECR 리포지토리를 재정의하고 배포할 지역을 더 추가할 수 있습니다.

이 자습서에서는 기본 설정을 사용합니다.

  • 다음을 선택하여 다음 단계로 계속합니다.

5단계: 검토

검토 섹션에는 구성한 모든 설정이 표시됩니다. 특정 섹션의 정보를 편집하려면 단계 섹션의 오른쪽 상단에 있는 편집 버튼을 선택합니다. 예를 들어 파이프라인 이름을 변경하려면 1단계: 파이프라인 세부 정보 섹션의 오른쪽 상단에 있는 편집 버튼을 선택합니다.

  1. 설정을 검토한 후 파이프라인 생성을 선택하여 파이프라인을 생성합니다.

  2. 배포 설정, 인프라 구성, 새 레시피, 파이프라인에 대한 리소스가 생성되므로 페이지 상단에서 성공 또는 실패 메시지를 확인할 수 있습니다. 리소스 식별자를 포함하여 리소스의 세부 정보를 보려면 세부 정보 보기를 선택합니다.

  3. 리소스의 세부 정보를 확인한 후 탐색 창에서 리소스 유형을 선택하여 다른 리소스에 대한 세부 정보를 볼 수 있습니다. 예를 들어 새 파이프라인의 세부 정보를 보려면 탐색 창에서 이미지 파이프라인을 선택하십시오. 빌드가 성공하면 새 파이프라인이 이미지 파이프라인 목록에 표시됩니다.

6단계: 정리

Image Builder 환경도 가정과 마찬가지로 정기적인 유지 관리가 필요합니다. 그래야 혼잡함 없이 필요한 것을 찾고 작업을 완료할 수 있습니다. 테스트용으로 만든 임시 리소스를 정기적으로 정리하십시오. 그렇지 않으면 해당 리소스를 잊어버리고 나중에는 해당 리소스가 어디에 사용되었는지 기억하지 못할 수 있습니다. 그때쯤이면 안전하게 제거할 수 있을지 확실하지 않을 수도 있습니다.

작은 정보

리소스를 삭제할 때 종속성 오류를 방지하려면 다음 순서대로 리소스를 삭제하십시오.

  1. 이미지 파이프라인

  2. 이미지 레시피

  3. 나머지 모든 리소스

이 자습서에서 생성한 리소스를 정리하려면, 다음 단계를 따르십시오.

파이프라인 삭제
  1. 계정에서 생성된 빌드 파이프라인 목록을 보려면 탐색 창에서 이미지 파이프라인을 선택하십시오.

  2. 삭제할 파이프라인을 선택하려면 파이프라인 이름 옆의 확인란을 선택합니다.

  3. 이미지 파이프라인 패널 상단의 작업 메뉴에서 삭제를 선택합니다.

  4. 삭제를 확인하려면 박스에 Delete을(를) 입력한 후 삭제를 선택합니다.

컨테이너 레시피 삭제
  1. 계정에서 생성된 컨테이너 레시피 목록을 보려면 탐색 창에서 컨테이너 레시피를 선택합니다.

  2. 삭제할 레시피를 선택하려면 레시피 이름 옆의 확인란을 선택합니다.

  3. 컨테이너 레시피 패널 상단의 작업 메뉴에서 레시피 삭제를 선택합니다.

  4. 삭제를 확인하려면 박스에 Delete을(를) 입력한 후 삭제를 선택합니다.

인프라 구성 삭제
  1. 계정에서 생성된 인프라 구성 목록을 보려면 탐색 창에서 인프라 구성을 선택하십시오.

  2. 구성 이름 옆의 확인란을 선택하여 삭제할 인프라 구성을 선택합니다.

  3. 인프라 구성 패널 상단에서 삭제를 선택합니다.

  4. 삭제를 확인하려면 박스에 Delete을(를) 입력한 후 삭제를 선택합니다.

배포 설정 삭제
  1. 계정에서 생성된 배포 설정 목록을 보려면 탐색 창에서 배포 설정을 선택합니다.

  2. 구성 이름 옆의 확인란을 선택하여 이 자습서를 위해 만든 배포 설정을 선택합니다.

  3. 배포 설정 패널 상단에서 삭제를 선택합니다.

  4. 삭제를 확인하려면 박스에 Delete을(를) 입력한 후 삭제를 선택합니다.

이미지 삭제

다음 단계에 따라 자습서 파이프라인에서 만든 이미지를 모두 삭제했는지 확인하십시오. 이 자습서에서는 빌드 일정에 따라 실행되는 파이프라인을 생성한 이후 충분한 시간이 경과해야 이미지를 생성할 가능성이 높습니다.

  1. 계정에서 생성된 이미지 목록을 보려면 탐색 창에서 이미지를 선택합니다.

  2. 제거하려는 이미지의 이미지 버전을 선택합니다. 그러면 이미지 빌드 버전 페이지가 열립니다.

  3. 삭제하려는 이미지의 버전 옆 확인란을 선택합니다. 한 번에 이미지 버전을 여러 개 선택할 수 있습니다.

  4. 이미지 빌드 버전 패널 상단에서 버전 삭제를 선택합니다.

  5. 삭제를 확인하려면 박스에 Delete을(를) 입력한 후 삭제를 선택합니다.