Diese Seite wurde von der Cloud Translation API übersetzt.
Switch to English

Kurzanleitung für npm

In dieser Kurzanleitung erfahren Sie, wie Sie ein npm-Repository für Artifact Registry einrichten und ein Paket darin hochladen.

Die Paketverwaltung befindet sich in der Alphaphase. Sie ist nur für Alphanutzer verfügbar und umfasst möglicherweise nicht alle Features der Containerverwaltung. Wenn Sie sich für die Alphaversion anmelden möchten, füllen Sie das Anmeldeformular aus. Weitere Informationen finden Sie unter Voraussetzungen für den Zugriff auf Alphafunktionen.

Hinweis

  1. Melden Sie sich bei Ihrem Google Cloud-Konto an. Wenn Sie mit Google Cloud noch nicht vertraut sind, erstellen Sie ein Konto, um die Leistungsfähigkeit unserer Produkte in der Praxis sehen und bewerten zu können. Neukunden erhalten außerdem ein Guthaben von 300 $, um Arbeitslasten auszuführen, zu testen und bereitzustellen.
  2. Wählen Sie in der Google Cloud Console auf der Seite der Projektauswahl ein Google Cloud-Projekt aus oder erstellen Sie eines.

    Zur Projektauswahl

  3. Die Abrechnung für das Cloud-Projekt muss aktiviert sein. So prüfen Sie, ob die Abrechnung für Ihr Projekt aktiviert ist.

  4. Aktivieren Sie die Artifact Registry API.

    Aktivieren Sie die API

  5. Installieren und initialisieren Sie das Cloud SDK.
  6. Installieren Sie PowerShell, wenn Sie von Windows eine Verbindung zu einem npm-Repository herstellen möchten.

npm-Repository erstellen

Erstellen Sie das Repository für Ihre Node.js-Artefakte:

  1. Im Folgenden wird gezeigt, wie Sie das Repository anlegen.

    Console

    1. Öffnen Sie in der Cloud Console die Seite Repositories.

      Zur Seite „Repositories“

    2. Klicken Sie auf Repository erstellen.

    3. Geben Sie quickstart-npm-repo als Repository-Namen an.

    4. Wählen Sie npm als Format aus.

    5. Wählen Sie unter Standorttyp die Option Region und dann den Standort us-central1 aus.

    6. Klicken Sie auf Erstellen.

    Das Repository wird der Repository-Liste hinzugefügt.

    gcloud

    1. Führen Sie den folgenden Befehl aus, um ein neues npm-Repository mit dem Namen quickstart-npm-repo am Speicherort us-central1 mit der Beschreibung „npm repository“ zu erstellen.

      gcloud artifacts repositories create quickstart-npm-repo --repository-format=npm \
      --location=us-central1 [--description="npm repository"]
      
    2. Führen Sie den folgenden Befehl aus, um zu prüfen, ob Ihr Repository erstellt wurde:

      gcloud artifacts repositories list
      

    Weitere Informationen zu Artifact Registry-Befehlen erhalten Sie mit dem Befehl gcloud artifacts.

  2. Um die gcloud-Befehle zu vereinfachen, legen Sie für das Standard-Repository den Wert quickstart-npm-repo und für den Standard-Speicherort us-central1 fest. Nachdem Sie die Werte festgelegt haben, müssen Sie diese nicht mehr in gcloud-Befehlen angeben, für die ein Repository oder Speicherort erforderlich ist.

    Um das Repository festzulegen, führen Sie folgenden Befehl aus:

    gcloud config set artifacts/repository quickstart-npm-repo
    

    Um den Speicherort festzulegen, führen Sie folgenden Befehl aus:

    gcloud config set artifacts/location us-central1
    

    Weitere Informationen zu diesen Befehlen finden Sie in der Dokumentation zu gcloud config set.

Dienstkonto für Ihren Client einrichten

Erstellen Sie ein Dienstkonto oder wählen Sie ein vorhandenes Dienstkonto aus, das im Namen von npm agieren soll.

  1. Erstellen Sie ein Dienstkonto, das im Namen Ihrer Anwendung agieren soll, oder wählen Sie ein vorhandenes Dienstkonto für die Automatisierung aus.

    Sie benötigen den Speicherort der Dienstkonto-Schlüsseldatei, um damit die Authentifizierung bei Artifact Registry einzurichten. Auf der Seite „Dienstkonten“ können Sie die Schlüssel vorhandener Konten aufrufen und neue Schlüssel erstellen.

    Zur Seite „Dienstkonten“

  2. Gewähren Sie dem Dienstkonto Lese- und Schreibzugriff auf Ihr Repository.

    gcloud artifacts repositories add-iam-policy-binding \
    quickstart-npm-repo --location=us-central1 --member='serviceAccount:ACCOUNT' --role='roles/artifactregistry.writer'
    

    Dabei ist ACCOUNT die ID Ihres Dienstkontos im Format USERNAME@PROJECT-ID.iam.gserviceaccount.com.

  3. Weisen Sie der Variablen GOOGLE_APPLICATION_CREDENTIALS den Speicherort des Dienstkontoschlüssels zu, damit die Artifact Registry-Credential Helper Ihren Schlüssel beim Herstellen einer Verbindung zu Repositories abrufen können.

    export GOOGLE_APPLICATION_CREDENTIALS=KEY-FILE
    

    Dabei ist KEY-FILE der Pfad zur Schlüsseldatei des Dienstkontos.

    Informationen zur alternativen Einrichtung der Passwortauthentifizierung mit der Dienstkonto-Schlüsseldatei erhalten Sie in der Dokumentation zu authentication#auth-password.

npm konfigurieren

  1. Erstellen Sie ein npm-Paket für den Upload. Wenn für diese Kurzanleitung kein Paket verfügbar ist, erstellen Sie mit dem folgenden Befehl eine einfache Datei package.json:

    npm init -y
    
  2. Konfigurieren Sie Ihr npm-Projekt für die Bereitstellung im Artifact Registry-Repository, das Sie erstellt haben.

    1. Führen Sie den folgenden Befehl aus: Der Befehl gibt Konfigurationseinstellungen zurück, die Ihrer npm-Konfigurationsdatei hinzugefügt werden können.

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

      Der Bereich quickstart ist mit Ihrem Repository verknüpft. Wenn Sie den Bereich in Befehle zum Veröffentlichen oder Installieren von Paketen einfügen, verwendet npm Ihr Repository. Wenn Sie Pakete ohne Bereich veröffentlichen oder installieren, wird Ihr konfiguriertes Standard-Repository verwendet. Weitere Informationen finden Sie in der Übersicht zu Node.js.

      Die Ausgabe des Befehls gcloud sieht in etwa so aus:

      @quickstart:registry=https://us-central1-npm.pkg.dev/PROJECT/quickstart-npm-repo/
      //us-central1-npm.pkg.dev/PROJECT/quickstart-npm-repo/:_authToken=""
      //us-central1-npm.pkg.dev/PROJECT/quickstart-npm-repo/:always-auth=true
      
    2. Fügen Sie der .npmrc-Datei des Projekts die Konfigurationseinstellungen aus dem vorherigen Schritt hinzu. Die Datei befindet sich in der Regel im selben Verzeichnis wie die Datei package.json.

      Ersetzen Sie PROJECT durch Ihre Projekt-ID.

      Weitere Informationen zur Datei .npmrc finden Sie in der Übersicht zu Node.js.

Jedes npm-Repository für Artefact Registry ist mit einem npm-Registry-Endpunkt https://LOCATION-npm.pkg.dev/PROJECT/REPOSITORY verknüpft. Wenn Sie ein weiteres npm-Repository für Artifact Registry erstellen, nutzt npm dieses Repository als separate Registry mit eigenem Bereich.

Paket in das Repository hochladen

  1. Wählen Sie ein Paket zum Hochladen aus. Achten Sie darauf, dass der Paketname in package.json den Bereich quickstart enthält.

    "name": "@quickstart/my-package"
    
  2. Aktualisieren Sie das Zugriffstoken für die Verbindung zum Repository. google-artifactregistry-auth ist eine Clientbibliothek, die Anmeldedaten für Artifact Registry-Repositories aktualisiert. Zum Aktualisieren von Anmeldedaten verwenden Sie eine der folgenden Optionen:

    • Fügen Sie der Datei package.json in Ihrem Projekt ein Skript hinzu.

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

      Führen Sie das Skript mit dem folgenden Befehl aus:

      npm run artifactregistry-login PROJECT-NPMRC
      

      Dabei ist PROJECT-NPMRC der Pfad zur Datei .npmrc in Ihrem Projektverzeichnis.

    • Für Versionen von npm, die älter als 5.2.0 sind, führen Sie die folgenden Schritte aus:

      1. Führen Sie diesen Befehl aus:
      npm install google-artifactregistry-auth --save-dev --registry https://registry.npmjs.org/
      
      1. Fügen Sie die Datei einem Authentifizierungsskript hinzu:
      "scripts": {
          "artifactregistry-login": "./node_modules/.bin/artifactregistry-auth",
      }
      

      Führen Sie das Skript mit dem folgenden Befehl aus:

      npm run artifactregistry-login PROJECT-NPMRC
      

      Dabei ist PROJECT-NPMRC der Pfad zur Datei .npmrc in Ihrem Projektverzeichnis.

  3. Fügen Sie das Paket dem Repository hinzu. Sie können dazu einen npm- oder yarn-Befehl verwenden.

    npm publish
    
    yarn publish
    

Paket im Repository aufrufen

So prüfen Sie, ob das Paket dem Repository hinzugefügt wurde:

Console

  1. Öffnen Sie in der Cloud Console die Seite Repositories.

    Zur Seite „Repositories“

  2. Klicken Sie in der Repository-Liste auf das Repository quickstart-npm-repo.

    Auf der Seite Pakete sind die Pakete des Repositorys aufgeführt.

  3. Klicken Sie auf ein Paket, um die Paketversionen aufzurufen.

gcloud

Um die Images im Standard-Repository quickstart-npm-repo aufzulisten, führen Sie folgenden Befehl aus:

 gcloud artifacts packages list

Um die Versionen für ein Paket aufzurufen, führen Sie folgenden Befehl aus:

gcloud artifacts versions list --package=PACKAGE

Dabei ist PACKAGE die Paket-ID.

Pakete installieren

Ein Paket aus dem npm-Repository kann mit dem Befehl npm install oder yarn add installiert werden. Ersetzen Sie dabei PACKAGE durch den Paketnamen.

npm install @quickstart/PACKAGE
yarn add @quickstart/PACKAGE

Bereinigen

Mit den folgenden Schritten vermeiden Sie, dass Ihrem Google Cloud-Konto die in dieser Kurzanleitung verwendeten Ressourcen in Rechnung gestellt werden:

Prüfen Sie vor dem Entfernen eines Repositorys, ob alle Pakete, die Sie beibehalten möchten, an einem anderen Speicherort verfügbar sind.

So löschen Sie das Repository:

Console

  1. Öffnen Sie in der Cloud Console die Seite Repositories.

    Zur Seite „Repositories“

  2. Wählen Sie in der Repository-Liste das Repository quickstart-npm-repo aus.

  3. Klicken Sie auf Löschen.

gcloud

  1. Um das Repository quickstart-npm-repo zu löschen, führen Sie folgenden Befehl aus:

    gcloud artifacts repositories delete quickstart-npm-repo
    
  2. Wenn Sie die Einstellungen für das Standard-Repository und den Standard-Speicherort entfernen möchten, die Sie für die aktive gcloud-Konfiguration festgelegt haben, führen Sie die folgenden Befehle aus:

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

Nächste Schritte