Artifact Registry에 Java 패키지 저장

이 빠른 시작에서는 비공개 Artifact Registry Maven 저장소를 설정하고 저장소에 패키지를 업로드하는 방법을 보여줍니다.


Google Cloud 콘솔에서 이 태스크에 대한 단계별 안내를 직접 수행하려면 둘러보기를 클릭합니다.

둘러보기


시작하기 전에

  1. Google Cloud 계정에 로그인합니다. Google Cloud를 처음 사용하는 경우 계정을 만들고 Google 제품의 실제 성능을 평가해 보세요. 신규 고객에게는 워크로드를 실행, 테스트, 배포하는 데 사용할 수 있는 $300의 무료 크레딧이 제공됩니다.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Google Cloud 프로젝트에 결제가 사용 설정되어 있는지 확인합니다.

  4. Enable the Artifact Registry API.

    Enable the API

  5. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  6. Google Cloud 프로젝트에 결제가 사용 설정되어 있는지 확인합니다.

  7. Enable the Artifact Registry API.

    Enable the API

Cloud Shell 실행

이 빠른 시작에서는 Google Cloud에서 호스팅되는 리소스를 관리하기 위한 셸 환경인 Cloud Shell을 사용합니다.

Cloud Shell에는 Google Cloud CLI 및 Java가 사전 설치되어 있습니다. gcloud CLI는 Google Cloud의 기본 명령줄 인터페이스를 제공합니다.

Cloud Shell 시작:

  1. Google Cloud 콘솔로 이동합니다.

    Google Cloud 콘솔

  2. Google Cloud 콘솔 툴바에서 Cloud Shell 활성화를 클릭합니다.

콘솔 하단의 프레임에서 Cloud Shell 세션이 열립니다. 이 셸을 사용하여 gcloud 명령어를 실행합니다.

자바 패키지 저장소 만들기

자바 아티팩트에 대한 저장소를 만듭니다.

  1. 저장소를 만듭니다.

콘솔

  1. Google Cloud 콘솔에서 저장소 페이지를 엽니다.

    저장소 페이지 열기

  2. 저장소 만들기를 클릭합니다.

  3. quickstart-java-repo를 저장소 이름으로 지정합니다.

  4. 형식은 Maven을 선택하고 모드는 Maven을 선택합니다.

  5. 위치 유형에서 리전을 선택한 후 us-central1 위치를 선택합니다.

  6. 만들기를 클릭합니다.

    저장소가 저장소 목록에 추가됩니다.

gcloud

  1. 다음 명령어를 실행하여 현재 프로젝트의 us-central1 위치에 quickstart-java-repo라는 새 자바 패키지 저장소를 만듭니다.

    gcloud artifacts repositories create quickstart-java-repo --repository-format=maven \
    --location=us-central1 --description="Java package repository"
    
  2. 다음 명령어를 실행하여 저장소가 생성되었는지 확인합니다.

    gcloud artifacts repositories list
    

    Artifact Registry 명령어에 대한 자세한 내용을 보려면 gcloud artifacts 명령어를 실행하세요.

Maven 구성

  1. 사용할 간단한 Maven 프로젝트를 선택합니다.

    간단한 프로젝트를 사용할 수 없는 경우에는 Maven 5분 프로젝트를 만들면 됩니다.

    이 빠른 시작은 간단한 프로젝트에 Artifact Registry에 저장된 추가 상위 요소 또는 플러그인 종속 항목이 없다고 가정합니다. Artifact Registry의 종속 항목으로 Maven 프로젝트 구성에 대한 자세한 내용은 사용자 인증 정보 도우미로 인증을 참조하세요.

  2. gcloud 명령어를 단순화하려면 기본 저장소를 quickstart-java-repo로 설정하고 기본 위치를 us-central1로 설정합니다. 이 값을 설정하면 저장소나 위치가 필요한 gcloud 명령어에 값을 지정할 필요가 없습니다.

    저장소를 설정하려면 다음 명령어를 실행하세요.

    gcloud config set artifacts/repository quickstart-java-repo
    

    위치를 설정하려면 다음 명령어를 실행하세요.

    gcloud config set artifacts/location us-central1
    

    이러한 명령어에 대한 자세한 내용은 gcloud config set 문서를 참조하세요.

  3. 다음 명령어를 실행하여 기본 quickstart-java-repo 저장소의 설정을 출력합니다.

    gcloud artifacts print-settings mvn
    

    gcloud 명령어의 결과는 다음 스니펫과 같습니다. 여기서 PROJECT는 프로젝트 ID입니다.

    <distributionManagement>
      <snapshotRepository>
        <id>artifact-registry</id>
        <url>artifactregistry://us-central1-maven.pkg.dev/PROJECT/quickstart-java-repo</url>
      </snapshotRepository>
      <repository>
        <id>artifact-registry</id>
        <url>artifactregistry://us-central1-maven.pkg.dev/PROJECT/quickstart-java-repo</url>
      </repository>
    </distributionManagement>
    
    <repositories>
      <repository>
        <id>artifact-registry</id>
        <url>artifactregistry://us-central1-maven.pkg.dev/PROJECT/quickstart-java-repo</url>
        <releases>
          <enabled>true</enabled>
        </releases>
        <snapshots>
          <enabled>true</enabled>
        </snapshots>
      </repository>
    </repositories>
    
    <build>
      <extensions>
        <extension>
          <groupId>com.google.cloud.artifactregistry</groupId>
          <artifactId>artifactregistry-maven-wagon</artifactId>
          <version>2.2.1</version>
        </extension>
      </extensions>
    </build>
    
  4. Maven 프로젝트에 대해 pom.xml 파일에 설정을 추가합니다. 다음 개요에서는 각 기본 요소의 상대적인 배치를 보여줍니다. 파일 구조에 대한 자세한 내용은 Maven POM 참조를 확인하세요.

    <project xmlns="http://maven.apache.org/POM/4.0.0"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
                          http://maven.apache.org/xsd/maven-4.0.0.xsd">
    
      <!-- Build Settings -->
      <build>
        ...
        <extensions>...</extensions>
      </build>
    
      <!-- Environment Settings -->
      <repositories>...</repositories>
      <distributionManagement>...</distributionManagement>
    </project>
    

이제 Maven 프로젝트가 저장소에 패키지를 업로드할 수 있습니다.

Gradle 구성

간단한 Gradle 프로젝트를 만들어 자신이 만든 Artifact Registry 저장소에 패키지를 배포합니다. 테스트 Gradle 빌드가 없다면 입문 Gradle 튜토리얼을 따라 간단한 Gradle 빌드를 만들면 됩니다.

gcloud 명령어를 단순화하려면 기본 저장소를 quickstart-java-repo로 설정하고 기본 위치를 us-central1로 설정합니다. 이 값을 설정하면 저장소나 위치가 필요한 gcloud 명령어에 값을 지정할 필요가 없습니다.

저장소를 설정하려면 다음 명령어를 실행하세요.

gcloud config set artifacts/repository quickstart-java-repo

위치를 설정하려면 다음 명령어를 실행하세요.

gcloud config set artifacts/location us-central1

이러한 명령어에 대한 자세한 내용은 gcloud config set 문서를 참조하세요.

  1. 저장소를 build.gradle 파일에 연결하는 설정을 추가합니다. 다음 명령어는 기본 quickstart-java-repo 저장소에 추가할 설정을 출력합니다.

    gcloud artifacts print-settings gradle
    

    gcloud 명령어의 결과는 다음 예시와 같습니다. 여기서 PROJECT는 프로젝트 ID입니다.

    plugins {
      id "maven-publish"
      id "com.google.cloud.artifactregistry.gradle-plugin" version "2.2.1"
          }
    
    publishing {
      repositories {
        maven {
          url "artifactregistry://us-central1-maven.pkg.dev/PROJECT/quickstart-java-repo"
        }
      }
    }
    
    repositories {
      maven {
        url "artifactregistry://us-central1-maven.pkg.dev/PROJECT/quickstart-java-repo"
      }
    }
    
  2. build.gradle 파일에 publications 섹션이 포함되어 있는지 확인합니다. 이 섹션이 없으면 build.gradle 파일에 추가합니다.

    다음 예시와 같이 publications 섹션은 publishing의 하위 요소입니다.

    publishing {
      publications {
           mavenJava(MavenPublication) {
              groupId  'maven.example.id'
              from components.java
           }
      }
      repositories {
        maven {
          url "artifactregistry://us-central1-maven.pkg.dev/PROJECT/quickstart-java-repo"
        }
      }
    }
    

    또한 init.gradle 또는 settings 파일에 저장소 구성을 추가할 수 있습니다. 이러한 옵션에 대한 자세한 내용은 인증 설정을 참조하세요.

    저장소에 패키지 업로드

    Maven의 경우 mvn deploymvn release를 사용하여 저장소에 패키지를 추가할 수 있습니다.

    Gradle의 경우 gradle publish 명령어를 사용해서 저장소에 패키지를 업로드합니다.

    저장소에서 패키지 보기

    패키지가 저장소에 추가되었는지 확인하려면 다음 안내를 따르세요.

    콘솔

    1. Google Cloud 콘솔에서 저장소 페이지를 엽니다.

      저장소 페이지 열기

    2. 저장소 목록에서 quickstart-java-repo 저장소를 선택합니다.

      패키지 페이지에 저장소의 패키지가 나열됩니다.

    gcloud

    1. quickstart-java-repo 저장소에 패키지를 나열하려면 다음 명령어를 실행합니다.

      gcloud artifacts packages list --repository=quickstart-java-repo
      

      출력은 다음과 비슷하게 표시됩니다.

      Listing items under project <project-id>, location us-central1,\
      repository quickstart-java-repo.
      
      PACKAGE: maven.example.id:gradle-demo
      CREATE_TIME: 2022-01-20T22:46:07
      UPDATE_TIME: 2022-01-20T22:46:07
      

      여기서 maven.example.id:gradle-demo패키지 ID입니다.

      패키지 버전을 보려면 다음 명령어를 실행합니다.

      gcloud artifacts versions list --package=PACKAGE
      

      여기서 PACKAGE는 패키지 ID입니다.

삭제

이 페이지에서 사용한 리소스 비용이 Google Cloud 계정에 청구되지 않도록 하려면 다음 단계를 수행합니다.

저장소를 삭제하기 전에, 보관할 패키지를 다른 위치에서 사용할 수 있는지 확인합니다.

저장소를 삭제하려면 다음 안내를 따르세요.

콘솔

  1. Google Cloud 콘솔에서 저장소 페이지를 엽니다.

    저장소 페이지 열기

  2. 저장소 목록에서 quickstart-java-repo 저장소를 선택합니다.

  3. 삭제를 클릭합니다.

gcloud

  1. quickstart-java-repo 저장소를 삭제하려면 다음 명령어를 실행합니다.

    gcloud artifacts repositories delete quickstart-java-repo
    
  2. 활성 gcloud 구성에 지정한 기본 저장소 및 위치 설정을 삭제하려면 다음 명령어를 실행합니다.

    gcloud config unset artifacts/repository
    gcloud config unset artifacts/location
    

다음 단계