Menyimpan paket Node.js di Artifact Registry

Panduan memulai ini menunjukkan cara menyiapkan repositori paket Node.js Artifact Registry pribadi dan mengupload paket ke dalamnya.

Sebelum memulai

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

  4. Enable the Artifact Registry API.

    Enable the API

  5. Install the Google Cloud CLI.
  6. To initialize the gcloud CLI, run the following command:

    gcloud init
  7. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  8. Make sure that billing is enabled for your Google Cloud project.

  9. Enable the Artifact Registry API.

    Enable the API

  10. Install the Google Cloud CLI.
  11. To initialize the gcloud CLI, run the following command:

    gcloud init
  12. Instal PowerShell, jika Anda ingin terhubung ke repositori paket Node.js dari Windows.

Meluncurkan Cloud Shell

Dalam panduan memulai ini, Anda akan menggunakan Cloud Shell, yang merupakan lingkungan shell untuk mengelola resource yang dihosting di Google Cloud.

Cloud Shell telah diinstal dengan Google Cloud CLI. Gcloud CLI menyediakan antarmuka command line utama untuk Google Cloud.

Meluncurkan Cloud Shell:

  1. Buka Konsol Google Cloud.

    Konsol Google Cloud

  2. Di toolbar Konsol Google Cloud, klik Activate Cloud Shell:

Sesi Cloud Shell akan terbuka di dalam frame yang lebih rendah di konsol. Anda menggunakan shell ini untuk menjalankan perintah gcloud.

Membuat repositori paket Node.js

Buat repositori untuk artefak Node.js Anda.

  1. Buat repositori.

    Konsol

    1. Buka halaman Repositories di konsol Google Cloud.

      Buka halaman Repositori

    2. Klik Create Repository.

    3. Tentukan quickstart-nodejs-repo sebagai nama repositori.

    4. Pilih npm sebagai format dan Standar sebagai mode.

    5. Di bawah Jenis Lokasi, pilih Region dan kemudian pilih lokasi us-central1.

    6. Klik Create.

    Repositori ditambahkan ke daftar repositori

    gcloud

    1. Jalankan perintah berikut untuk membuat repositori paket Node.js baru bernama quickstart-nodejs-repo di lokasi us-central1 dengan deskripsi "repositori Node.js".

      gcloud artifacts repositories create quickstart-nodejs-repo --repository-format=npm \
      --location=us-central1 --description="Node.js package repository"
      
    2. Jalankan perintah berikut untuk memverifikasi bahwa repositori Anda telah dibuat.

      gcloud artifacts repositories list
      

    Untuk mengetahui informasi selengkapnya tentang perintah Artifact Registry, jalankan perintah gcloud artifacts.

  2. Untuk menyederhanakan perintah gcloud, tetapkan repositori default ke quickstart-nodejs-repo dan lokasi default ke us-central1. Setelah nilai ditetapkan, Anda tidak perlu menentukannya dalam perintah gcloud yang memerlukan repositori atau lokasi.

    Untuk menetapkan repositori, jalankan perintah:

    gcloud config set artifacts/repository quickstart-nodejs-repo
    

    Untuk menetapkan lokasi, jalankan perintah:

    gcloud config set artifacts/location us-central1
    

    Untuk mengetahui informasi selengkapnya tentang perintah ini, lihat dokumentasi gcloud config set.

Mengonfigurasi npm

Untuk mengupload dan mendownload paket, Anda harus mengonfigurasi project npm dengan setelan untuk melakukan autentikasi dengan repositori yang Anda buat. Untuk panduan memulai ini, Anda akan mengupload paket sederhana, lalu menginstalnya dalam paket kedua sebagai dependensi.

  1. Download paket emoji-regex, paket sederhana yang menyediakan ekspresi reguler untuk mencocokkan semua simbol dan urutan emoji.

    npm pack emoji-regex
    

    Perintah ini mendownload arsip paket.

  2. Ekstrak arsip ke direktori emoji-regex. Perintah berikut adalah untuk arsip emoji-regex versi 10.1.0:

    mkdir emoji-regex && tar xvf emoji-regex-10.1.0.tgz -C emoji-regex --strip-components 1
    
  3. Buat paket npm kedua yang akan Anda gunakan untuk menginstal paket emoji-regex dari Artifact Registry. Untuk paket ini, gunakan perintah npm init untuk membuat paket dasar.

    mkdir npm-package2
    cd npm-package2
    
    npm init -y
    

    Saat diminta, setujui nilai default.

  4. Konfigurasikan project emoji-regex dan npm-package2 untuk mengautentikasi dengan repositori Artifact Registry yang Anda buat.

    1. Jalankan perintah berikut. Perintah ini menampilkan setelan konfigurasi untuk ditambahkan ke file konfigurasi npm Anda.

      gcloud artifacts print-settings npm --scope=@quickstart
      

      Cakupan quickstart dikaitkan dengan repositori Anda. Saat Anda menyertakan cakupan dalam perintah untuk memublikasikan atau menginstal paket, npm akan menggunakan repositori Anda. Saat Anda memublikasikan atau menginstal paket tanpa cakupan, repositori default yang dikonfigurasi akan digunakan. Untuk informasi selengkapnya, lihat ringkasan Node.js.

      Output perintah gcloud terlihat seperti contoh berikut. PROJECT adalah project ID Google Cloud Anda.

      @quickstart:registry=https://us-central1-npm.pkg.dev/PROJECT/quickstart-nodejs-repo/
      //us-central1-npm.pkg.dev/PROJECT/quickstart-nodejs-repo/:always-auth=true
      
    2. Tambahkan setelan konfigurasi dari langkah sebelumnya ke file .npmrc project di setiap project npm. File dalam direktori yang sama dengan file package.json.

      Untuk mempelajari file .npmrc lebih lanjut, lihat ringkasan Node.js.

      Setiap repositori paket Node.js Artifact Registry dikaitkan dengan endpoint registry npm https://LOCATION-npm.pkg.dev/PROJECT/REPOSITORY. Jika Anda membuat repositori paket Node.js Artifact Registry lain, npm akan berinteraksi dengannya sebagai registry terpisah dengan cakupannya sendiri.

  5. Edit package.json di project emoji-regex dan npm-package2.

    1. Pastikan nilai untuk name menyertakan cakupan quickstart.

      • Untuk emoji-regex:
      "name": "@quickstart/emoji-regex"
      
      • Untuk npm-package2:
      "name": "@quickstart/npm-package2"
      
    2. Di bagian scripts, tambahkan skrip untuk google-artifactregistry-auth, library klien yang memperbarui kredensial untuk repositori Artifact Registry.

      "scripts": {
        "artifactregistry-login": "npx google-artifactregistry-auth"
      }
      

Mengupload paket ke repositori

  1. Muat ulang token akses untuk terhubung ke repositori.

    npm run artifactregistry-login
    
  2. Tambahkan paket Anda ke repositori. Anda dapat menggunakan perintah npm atau yarn.

    npm publish
    
    yarn publish
    

Melihat paket di repositori

Untuk memverifikasi bahwa paket Anda telah ditambahkan ke repositori:

Konsol

  1. Buka halaman Repositories di konsol Google Cloud.

    Buka halaman Repositori

  2. Di daftar repositori, klik repositori quickstart-nodejs-repo.

    Halaman Paket mencantumkan paket di repositori.

  3. Klik paket untuk melihat versi paket.

gcloud

Untuk menampilkan daftar image di repositori quickstart-nodejs-repo default, jalankan perintah berikut:

 gcloud artifacts packages list

Untuk melihat versi paket, jalankan perintah berikut:

gcloud artifacts versions list --package=PACKAGE

Dengan PACKAGE adalah ID paket.

Menginstal paket

Instal paket emoji-regex dari repositori Artifact Registry Anda di npm-package2.

Di direktori npm-package2, jalankan perintah npm install atau yarn add:

npm install @quickstart/emoji-regex
yarn add @quickstart/emoji-regex

Perintah ini menginstal paket emoji-regex di project npm-package2. Tindakan ini juga memperbarui package.json untuk menetapkan emoji-regex sebagai dependensi.

"dependencies": {
  "@quickstart/emoji-regex": "^10.1.0"
}

Pembersihan

Agar tidak menimbulkan biaya pada akun Google Cloud Anda untuk resource yang digunakan pada halaman ini, ikuti langkah-langkah berikut.

Sebelum menghapus repositori, pastikan paket yang ingin Anda simpan tersedia di lokasi lain.

Untuk menghapus repositori:

Konsol

  1. Buka halaman Repositories di konsol Google Cloud.

    Buka halaman Repositori

  2. Dalam daftar repositori, pilih repositori quickstart-nodejs-repo.

  3. Klik Hapus.

gcloud

  1. Untuk menghapus repositori quickstart-nodejs-repo, jalankan perintah berikut:

    gcloud artifacts repositories delete quickstart-nodejs-repo
    
  2. Jika Anda ingin menghapus setelan repositori dan lokasi default yang dikonfigurasi untuk konfigurasi gcloud aktif, jalankan perintah berikut:

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

Langkah selanjutnya