View a markdown version of this page

nerdctl 및 SOCI CLI 예제를 사용하여 SOCI 인덱스 생성 - Amazon SageMaker AI

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

nerdctl 및 SOCI CLI 예제를 사용하여 SOCI 인덱스 생성

다음 페이지에서는 nerdctl 및 SOCI CLI를 사용하여 SOCI 인덱스를 생성하는 방법에 대한 예제를 제공합니다.

SOCI 인덱스 생성 예제
  1. 먼저 다음 AWS CLI 명령에 대한 변수를 설정합니다. 다음은 변수를 설정하는 예제입니다.

    ACCOUNT_ID="111122223333" REGION="us-east-1" REPOSITORY_NAME="repository-name" ORIGINAL_IMAGE_TAG="original-image-tag" SOCI_IMAGE_TAG="soci-indexed-image-tag"

    변수 정의:

    • ACCOUNT_ID는 ID입니다 AWS 계정 .

    • REGION는 Amazon ECR 프라이빗 레지스트리 AWS 리전 의 입니다.

    • REPOSITORY_NAME는 Amazon ECR 프라이빗 레지스트리의 이름입니다.

    • ORIGINAL_IMAGE_TAG는 원본 이미지의 태그입니다.

    • SOCI_IMAGE_TAG는 SOCI로 인덱싱된 이미지의 태그입니다.

  2. 필요한 도구를 설치합니다.

    # Install SOCI CLI, containerd, and nerdctl sudo yum install soci-snapshotter sudo yum install containerd jq sudo systemctl start soci-snapshotter sudo systemctl restart containerd sudo yum install nerdctl
  3. 레지스트리 변수를 설정합니다.

    REGISTRY_USER=AWS REGISTRY="$ACCOUNT_ID.dkr.ecr.$REGION.amazonaws.com"
  4. 리전을 내보내고 Amazon ECR에 인증합니다.

    export AWS_REGION=$REGION REGISTRY_PASSWORD=$(/usr/local/bin/aws ecr get-login-password --region $AWS_REGION) echo $REGISTRY_PASSWORD | sudo nerdctl login -u $REGISTRY_USER --password-stdin $REGISTRY
  5. 원래 컨테이너 이미지를 가져옵니다.

    sudo nerdctl pull $REGISTRY/$REPOSITORY_NAME:$ORIGINAL_IMAGE_TAG
  6. SOCI 인덱스를 생성합니다.

    sudo nerdctl image convert --soci $REGISTRY/$REPOSITORY_NAME:$ORIGINAL_IMAGE_TAG $REGISTRY/$REPOSITORY_NAME:$SOCI_IMAGE_TAG
  7. SOCI로 인덱싱된 이미지를 푸시합니다.

    sudo nerdctl push --platform linux/amd64 $REGISTRY/$REPOSITORY_NAME:$SOCI_IMAGE_TAG

이 프로세스는 ECR 리포지토리의 원래 컨테이너 이미지에 대해 두 개의 아티팩트를 생성합니다.

  • SOCI 인덱스 - 지연 로딩을 활성화하는 메타데이터

  • 이미지 인덱스 매니페스트 - OCI 준수 매니페스트