이 페이지에서는 Apt 저장소에서 Debian 패키지 추가, 보기, 삭제하는 방법을 설명합니다.
시작하기 전에
- 대상 Apt 저장소가 없으면 새 저장소를 만듭니다.
- 저장소에 액세스하도록 VM을 구성합니다.
- (선택사항) gcloud 명령어의 기본값을 구성합니다.
- 메타데이터의 패키지 이름이 Debian 패키지 이름 표준을 충족하는지 확인합니다.
패키지 추가
저장소 모드: 표준
패키지를 추가하려면 저장소에 대한 읽기 및 쓰기 권한이 모두 있어야 합니다.
Google Cloud CLI를 사용하여 저장소에 패키지를 업로드하거나 Cloud Storage에 저장된 패키지를 가져올 수 있습니다. Cloud Build를 사용하여 패키지를 빌드하는 경우 빌드는 패키지를 가져올 수 있도록 Cloud Storage에 저장할 수 있습니다.
가져오기 또는 업로드 작업이 매우 길면 gcloud CLI에서 API를 호출하는 데 사용하는 토큰의 만료 기간을 초과할 수 있습니다. 추가할 패키지가 너무 많으면 각 업로드 또는 가져오기 작업을 더 짧은 시간 내에 완료할 수 있도록 패키지를 더 작은 배치로 추가하는 것을 고려하세요. 자세한 내용은 OS 패키지 문제 해결 문서를 참조하세요.
직접 업로드
gcloud artifacts apt upload
명령어를 사용하여 Apt 저장소에 패키지를 업로드합니다.
gcloud artifacts apt upload REPOSITORY \
--location=LOCATION \
--source=PACKAGES
다음 값을 바꿉니다.
- REPOSITORY는 Artifact Registry 저장소 이름입니다.
- LOCATION은 저장소의 리전 또는 멀티 리전 위치입니다.
- PACKAGES는 패키지의 경로입니다.
예를 들어 my-package.deb
패키지를 us-central1
위치에 있는 Apt 저장소 my-repo
에 업로드하려면 다음을 실행합니다.
gcloud artifacts apt upload my-repo \ --location=us-central1 \ --source=my-package.deb
Cloud Storage
다음 방법 중 하나로 패키지를 Cloud Storage에 업로드합니다.
- Cloud Storage 버킷에 직접 패키지를 업로드
- Cloud Build로 패키지를 빌드하고 버킷에 저장
다음 명령어를 실행합니다.
gcloud artifacts apt import REPOSITORY \ --location=LOCATION \ --gcs-source=PACKAGES
다음 값을 바꿉니다.
- REPOSITORY는 Artifact Registry 저장소 이름입니다.
- LOCATION은 저장소의 리전 또는 멀티 리전 위치입니다.
- PACKAGES는 Cloud Storage의 패키지의 쉼표로 구분된 목록입니다. 디렉터리에서 모든 패키지를 업로드하려면 디렉터리 와일드 카드(
*
)를 사용하거나 재귀 디렉터리 와일드 카드(**)를 사용하여 모든 하위 디렉터리의 모든 패키지를 업로드합니다.
예를 들어
package.rpm
패키지와directory
디렉터리의 모든 패키지를my-bucket
버킷에서us-central1
위치의my-repo
Apt 저장소에 업로드하려면 다음을 실행합니다.gcloud artifacts apt import my-repo \ --location=us-central1 \ --gcs-source=gs://my-bucket/path/to/package.deb,gs://my-bucket/directory*
업로드 또는 가져오기 작업이 완료되면 Google Cloud 콘솔 또는 gcloud CLI를 사용하여 저장소의 패키지를 뷰하고 업로드가 성공적으로 완료되었는지 확인할 수 있습니다.
패키지가 많은 대용량 저장소가 있는 경우 새 패키지가 Apt 클라이언트에 표시되도록 패키지 색인을 다시 생성하는 데 몇 분 정도 걸릴 수 있습니다.
패키지 보기
저장소 모드: 표준, 원격(미리보기)
패키지를 보려면 Artifact Registry 리더 역할에 권한이 있어야 합니다. Artifact Registry는 패키지 내의 파일을 나열하지 않습니다.
Google Cloud 콘솔 또는 gcloud
를 사용하여 패키지 및 패키지 버전을 보려면 다음 안내를 따르세요.
콘솔
Google Cloud 콘솔에서 저장소 페이지를 엽니다.
저장소 목록에서 적절한 저장소를 클릭합니다.
패키지 페이지에 저장소의 패키지가 나열됩니다.
패키지의 버전을 보려면 패키지를 클릭합니다.
gcloud
저장소의 패키지를 나열하려면 다음 명령어를 실행합니다.
gcloud artifacts packages list [--repository=REPOSITORY] [--location=LOCATION]
위치
- REPOSITORY은 저장소 이름입니다. 기본 저장소를 구성한 경우 이 플래그를 생략하여 기본값을 사용할 수 있습니다.
- LOCATION은리전 또는 멀티 리전위치입니다. 특정 위치의 저장소를 보려면 이 플래그를 사용합니다. 기본 위치를 구성한 경우 이 플래그를 생략하여 기본값을 사용할 수 있습니다.
패키지 버전을 보려면 다음 명령어를 실행합니다.
gcloud artifacts versions list --package=PACKAGE \
[--repository=REPOSITORY] [--location=LOCATION]
위치
패키지 설치
저장소 모드: 표준, 원격(미리보기)
패키지를 설치하기 전에 패키지 관리자와 저장소를 올바르게 구성했는지 확인합니다.
저장소에 패키지를 설치하려면 다음 안내를 따르세요.
사용 가능한 패키지 목록을 업데이트합니다.
sudo apt update
Apt에 구성된 저장소의 이름을 지정하여 패키지를 설치합니다.
sudo apt install PACKAGE/REPOSITORY
다음 값을 바꿉니다.
- PACKAGE는 패키지 이름입니다.
- REPOSITORY는 Artifact Registry 저장소의 이름입니다. 원격 저장소의 경우 표준 업스트림 저장소의 이름을 사용합니다.
예를 들어
my-repo
저장소에서my-package
패키지를 설치하려면 다음 명령어를 실행합니다.sudo apt install my-package -t my-repo
패키지 삭제
저장소 모드: 표준
패키지 또는 패키지 버전을 삭제하기 전에 이에 대한 중요한 종속 항목에 대해 논의하거나 처리했는지 확인합니다.
패키지를 삭제하려면 다음 안내를 따르세요.
콘솔
Google Cloud 콘솔에서 저장소 페이지를 엽니다.
저장소 목록에서 적절한 저장소를 클릭합니다.
패키지 페이지에 저장소의 패키지가 나열됩니다.
삭제할 위젯을 선택합니다.
삭제를 클릭합니다.
확인 대화상자에서 삭제를 클릭합니다.
gcloud
다음 명령어를 실행합니다.
gcloud artifacts packages delete PACKAGE \
[--repository=REPOSITORY] [--location=LOCATION] [--async]
위치
패키지 버전을 삭제하려면 다음 안내를 따르세요.
콘솔
Google Cloud 콘솔에서 저장소 페이지를 엽니다.
저장소 목록에서 적절한 저장소를 클릭합니다.
패키지 페이지에 저장소의 패키지가 나열됩니다.
패키지의 버전을 보려면 패키지를 클릭합니다.
삭제할 버전을 선택합니다.
삭제를 클릭합니다.
확인 대화상자에서 삭제를 클릭합니다.
gcloud
다음 명령어를 실행합니다.
gcloud artifacts versions delete VERSION \
--package=PACKAGE \
[--repository=REPOSITORY] [--location=LOCATION] \
[--async]
위치
대규모 저장소의 경우 삭제를 반영하도록 Apt 패키지 색인을 다시 생성하는 데 몇 분 정도 걸릴 수 있습니다.