Python-Pakete verwalten

Auf dieser Seite wird beschrieben, wie Sie Python-Pakete und -Paketversionen hinzufügen, anzeigen und löschen.

Hinweis

  1. Prüfen Sie, ob Sie die Artifact Registry API aktiviert und das Cloud SDK installiert haben. Anleitungen finden Sie unter Dienst aktivieren und deaktivieren.

    Das gcloud-Befehlszeilentool Version 354.0.0 oder höher ist erforderlich, um Befehle für Python-Repositories auszuführen. Mit dem folgenden Befehl können Sie die Version prüfen:

    gcloud version
    
  2. Wenn das Ziel-Repository nicht vorhanden ist, erstellen Sie ein neues Python-Paket-Repository.

  3. Prüfen Sie, ob Python 3 installiert ist. Installationsanweisungen finden Sie in der Google Cloud-Anleitung zum Einrichten von Python.

  4. (Optional) Konfigurieren Sie die Standardeinstellungen für gcloud-Befehle.

  5. Wenn Sie die Schlüsselbundauthentifizierung mit gcloud-Anmeldedaten verwenden, melden Sie sich mit Ihrem Nutzerkonto oder Dienstkonto beim Cloud SDK an.

Pakete hinzufügen

Erforderliche Berechtigungen:Artifact Registry-Autor

Wenn Sie ein Python-Projekt erstellen, werden die Verteilungsdateien in einem dist-Unterverzeichnis Ihres Projekts gespeichert. Anschließend können Sie Twine verwenden, um Pakete in das Repository hochzuladen.

Wir empfehlen die folgenden Best Practices für Ihre Pakete:

  • Verwenden Sie eindeutige Namen für Ihre privaten Pakete, damit sie nicht mit den Paketnamen auf pypi.org übereinstimmen, insbesondere wenn Ihre pip-Konfiguration mehrere Paketindexe enthält.
  • Verwenden Sie in PEP 440 die Spezifikation der Versionskennung für die Paketversionsnummern. Standardmäßig installiert pip nur stabile Releases. Sie verwendet die Spezifikation der Versionskennung, um stabile Versionen von Vorabveröffentlichungen zu unterscheiden und alle Anforderungen für die zu installierende Version zu parsen.

So fügen Sie ein Paket hinzu:

  1. Installieren Sie Twine.

    pip install twine
    
  2. Wechseln Sie in das Python-Projektverzeichnis.

  3. Laden Sie die Verteilungsdateien aus dem Unterverzeichnis dist des Projekts in das Repository hoch. Führen Sie dazu diesen Befehl aus:

    twine upload dist/*
    

    Mit dem Flag --repository-url können Sie ein bestimmtes Repository angeben.

    twine upload --repository-url https://LOCATION-python.pkg.dev/PROJECT/REPOSITORY/ dist/*
    

Pakete und Versionen ansehen

Erforderliche Berechtigungen:Artifact Registry-Leser

So rufen Sie die Pakete und Paketversionen mit der Google Cloud Console oder gcloud ab:

Console

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

    Zur Seite „Repositories“

  2. Klicken Sie in der Liste der Repositories auf das entsprechende Repository.

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

  3. Klicken Sie auf das Paket, um die Versionen des Pakets aufzurufen.

gcloud

Führen Sie den folgenden Befehl aus, um die Pakete in einem Repository aufzulisten:

gcloud artifacts packages list [--repository=REPOSITORY] [--location=LOCATION]

Wo

  • REPOSITORY ist der Name des Repositorys. Wenn Sie ein Standard-Repository konfiguriert haben, wird bei Weglassen dieses Flags dieses Standard-Repository verwendet.
  • LOCATION ist ein regionaler oder multiregionaler Speicherort. Verwenden Sie dieses Flag, um Repositories an einem bestimmten Speicherort aufzurufen. Wenn Sie einen Standard-Speicherort konfiguriert haben, wird bei Weglassen dieses Flags dieser Standardwert verwendet.

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

gcloud artifacts versions list --package=PACKAGE \
    [--repository=REPOSITORY] [--location=LOCATION]

Wo

  • PACKAGE ist die ID des Pakets oder die vollqualifizierte Kennzeichnung für das Paket.
  • REPOSITORY ist der Name des Repositorys. Wenn Sie ein Standard-Repository konfiguriert haben, wird bei Weglassen dieses Flags dieses Standard-Repository verwendet.
  • LOCATION ist ein regionaler oder multiregionaler Speicherort. Verwenden Sie dieses Flag, um Repositories an einem bestimmten Speicherort aufzurufen. Wenn Sie einen Standard-Speicherort konfiguriert haben, wird bei Weglassen dieses Flags dieser Standardwert verwendet.

Pakete und Versionen löschen

Erforderliche Berechtigungen:Artifact Registry-Repository-Administrator

Bevor Sie ein Paket oder eine Paketversion löschen, prüfen Sie, ob Sie alle wichtigen Abhängigkeiten davon kommuniziert oder behoben haben.

So löschen Sie ein Paket:

Console

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

    Zur Seite „Repositories“

  2. Klicken Sie in der Liste der Repositories auf das entsprechende Repository.

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

  3. Wählen Sie das Paket aus, das Sie löschen möchten.

  4. Klicken Sie auf Löschen.

  5. Klicken Sie im Bestätigungsdialogfeld auf Löschen.

gcloud

Führen Sie folgenden Befehl aus:

gcloud artifacts packages delete PACKAGE \
    [--repository=REPOSITORY] [--location=LOCATION] [--async]

Wo

  • PACKAGE ist der Name des Pakets im Repository.
  • REPOSITORY ist der Name des Repositorys. Wenn Sie ein Standard-Repository konfiguriert haben, wird bei Weglassen dieses Flags dieses Standard-Repository verwendet.
  • LOCATION ist ein regionaler oder multiregionaler Speicherort. Verwenden Sie dieses Flag, um Repositories an einem bestimmten Speicherort aufzurufen. Wenn Sie einen Standard-Speicherort konfiguriert haben, wird bei Weglassen dieses Flags dieser Standardwert verwendet.
  • --async wird sofort zurückgegeben, ohne auf den Abschluss des Vorgangs zu warten.

So löschen Sie Versionen eines Pakets:

Console

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

    Zur Seite „Repositories“

  2. Klicken Sie in der Liste der Repositories auf das entsprechende Repository.

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

  3. Klicken Sie auf das Paket, um die Versionen des Pakets aufzurufen.

  4. Wählen Sie die Versionen aus, die Sie löschen möchten.

  5. Klicken Sie auf Löschen.

  6. Klicken Sie im Bestätigungsdialogfeld auf Löschen.

gcloud

Führen Sie folgenden Befehl aus:

gcloud artifacts versions delete VERSION \
    --package=PACKAGE \
    [--repository=REPOSITORY] [--location=LOCATION] \
    [--async]

Wo

  • PACKAGE ist der Name des Pakets im Repository.
  • REPOSITORY ist der Name des Repositorys. Wenn Sie ein Standard-Repository konfiguriert haben, wird bei Weglassen dieses Flags dieses Standard-Repository verwendet.
  • LOCATION ist ein regionaler oder multiregionaler Speicherort. Verwenden Sie dieses Flag, um Repositories an einem bestimmten Speicherort aufzurufen. Wenn Sie einen Standard-Speicherort konfiguriert haben, wird bei Weglassen dieses Flags dieser Standardwert verwendet.
  • --async wird sofort zurückgegeben, ohne auf den Abschluss des Vorgangs zu warten.

Pakete installieren

Erforderliche Berechtigungen:Artifact Registry-Leser

Verwenden Sie den Befehl pip, um Pakete aus dem Repository zu installieren.

Führen Sie den folgenden Befehl aus, um die neueste stabile Version eines Pakets zu installieren:

pip install PACKAGE

Standardmäßig installiert pip stabile Versionen eines Pakets und ignoriert Vorabversionen. PEP 440 definiert die Spezifikation der Python-Versionskennung, mit der Nutzer zum Parsen von Versionsnummern aufgefordert werden, einschließlich Vorabversionen.

Wenn Sie bei der Suche nach einem Paket, das installiert werden soll, Vorabversionen einschließen möchten, verwenden Sie das Flag --pre für Ihren Befehl.

pip install --pre PACKAGE

Wenn Sie eine erforderliche Version oder einen erforderlichen Bereich angeben möchten, verwenden Sie einen Anforderungsspezifizierer. Sie können die Versionsanforderung direkt in Ihren Befehl aufnehmen oder eine Anforderungsdatei verwenden.

Dieser Befehl gibt beispielsweise an, dass die Mindestversion von my-package die Entwicklungsversion 1.0.dev0 ist.

pip install --pre my-package>=1.0.dev0

Stabile Releases werden als neuere Releases betrachtet. Wenn sich Version 1.0 im Repository befindet, wählt pip jedoch Version 1.0 vor einer Vorabveröffentlichung.

Wenn Sie kein Repository angeben, bestimmt die pip-Konfiguration in pip.conf, wie pip nach dem Paket sucht.

  • Wenn Sie das Artifact Registry-Repository mit der Einstellung index-url konfiguriert haben und keine anderen Paketindexe konfiguriert sind, durchsucht pip nur in Ihrem Artifact Registry-Repository nach dem Paket.
  • Wenn Sie das Repository mit der Einstellung extra-index-url konfiguriert oder mehrere Paketindexe konfiguriert haben, durchsucht pip pypi.org und alle anderen konfigurierten Paketindexe und wählt die aktuelle Version des Pakets.

Alternativ können Sie das zu suchende Repository angeben. Fügen Sie dazu dem Befehl das Flag --index-url hinzu.

pip install --index-url https://LOCATION-python.pkg.dev/PROJECT/REPOSITORY/simple/ PACKAGE

Weitere Informationen zum Installieren von Paketen finden Sie in der Dokumentation zum Python-Paketerstellung.

Nächste Schritte