Kurzanleitung für Python

In dieser Kurzanleitung erfahren Sie, wie Sie ein Artifact Registry-Python-Repository einrichten, ein Paket hochladen und dann das Paket installieren.

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. Wählen Sie in der Google Cloud Console auf der Seite der Projektauswahl ein Google Cloud-Projekt aus oder erstellen Sie eines.

    Zur Projektauswahl

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

  7. Aktivieren Sie die Artifact Registry API.

    Aktivieren Sie die API

Cloud Shell aufrufen

In dieser Kurzanleitung verwenden Sie Cloud Shell, eine Shell-Umgebung für die Verwaltung von Ressourcen, die in Google Cloud gehostet werden.

In Cloud Shell sind das gcloud-Befehlszeilentool und Python vorinstalliert. Das gcloud-Tool bietet die primäre Befehlszeile für Google Cloud.

Cloud Shell aufrufen

  1. Öffnen Sie die Google Cloud Console.

    Google Cloud Console

  2. Klicken Sie in der Symbolleiste der Cloud Console auf Cloud Shell aktivieren:

In einem Frame im unteren Teil der Console wird eine Cloud Shell-Sitzung geöffnet. Mit dieser Shell führen Sie gcloud-Befehle aus.

Virtuelle Umgebung einrichten

In diesem Abschnitt erstellen Sie mit venv eine isolierte virtuelle Umgebung.

In der Umgebung, die Sie installieren, gilt Folgendes:

Durch die Verwendung einer virtuellen Umgebung werden die Python-Abhängigkeiten in einem Projekt von den Abhängigkeiten in anderen Projekten isoliert. Wir empfehlen Ihnen, bei der lokalen Entwicklung mit Python immer eine virtuelle Projektumgebung zu verwenden.

So richten Sie eine virtuelle Umgebung ein:

  1. Erstellen Sie mit dem Befehl venv eine virtuelle Kopie der gesamten Python 3-Installation in einem Ordner mit dem Namen quickstart.

    python3 -m venv quickstart
    
  2. Legen Sie in der Shell die Verwendung der venv-Pfade für Python fest, indem Sie die virtuelle Umgebung aktivieren.

    source quickstart/bin/activate
    

    Die Eingabeaufforderung wird geändert, um zu zeigen, dass Sie die virtuelle Python 3-Umgebung verwenden.

    (quickstart) user@~$ python --version
    
  3. Aktualisieren Sie pip auf die neueste Version:

    python -m pip install -U pip
    
  4. Installieren Sie Twine und das Artifact Registry-Schlüsselbund-Back-End mit dem folgenden Befehl:

    pip install twine keyrings.google-artifactregistry-auth
    
  5. Listen Sie Back-Ends auf, um die Installation zu bestätigen.

    keyring --list-backends
    

    Die Ausgabe sieht so aus:

    keyring.backends.chainer.ChainerBackend (priority: -1)
    keyring.backends.fail.Keyring (priority: 0)
    keyrings.gauth.GooglePythonAuth (priority: 9)
    

Repository erstellen

Erstellen Sie das Repository für Ihre Pakete.

  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-python-repo als Repository-Namen an.

    4. Wählen Sie Python 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 Python-Paket-Repository im aktuellen Projekt mit dem Namen quickstart-python-repo am Standort us-central1 zu erstellen.

      gcloud artifacts repositories create quickstart-python-repo \
          --repository-format=python \
          --location=us-central1 \
          --description="Python package 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-python-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-python-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.

Authentifizierung konfigurieren

So richten Sie die Authentifizierung mit dem Artifact Registry-Schlüsselbund-Back-End ein:

  1. Führen Sie den folgenden Befehl aus, um die Repository-Konfiguration auszudrucken, die Sie Ihrem Python-Projekt hinzufügen möchten.

    gcloud artifacts print-settings python
    
  2. Erstellen oder aktualisieren Sie die Datei .pypirc. Diese Datei gibt Repositories zum Veröffentlichen von Python-Paketen an.

    Der Standardspeicherort ist:

    • Linux und macOS: $HOME/.pypirc
    • Windows: %USERPROFILE%\.pypirc

    In der Datei .pypirc listet index-servers Repositories auf. Jedes Repository hat einen separaten Abschnitt mit Repository-Einstellungen.

    [distutils]
    index-servers =
        quickstart-python-repo
    
    [quickstart-python-repo]
    repository: https://us-central1-python.pkg.dev/PROJECT_ID/quickstart-python-repo/
    

    Ersetzen Sie PROJECT_ID durch Ihre Projekt-ID.

  3. Erstellen Sie eine pip-Konfigurationsdatei für Ihre virtuelle Umgebung. Die Einstellungen in dieser Datei werden mit allen Einstellungen in der globalen oder nutzerspezifischen pip.conf kombiniert.

    • Unix und macOS: $VIRTUAL_ENV/pip.conf
    • Windows: %VIRTUAL_ENV%\pip.ini

    Fügen Sie das folgende Snippet in die Datei ein:

    [global]
    extra-index-url = https://us-central1-python.pkg.dev/PROJECT_ID/quickstart-python-repo/simple/
    

    Der String /simple/ am Ende des Repository-Pfads gibt an, dass das Repository die Python Simple Repository API implementiert.

  4. Melden Sie sich mit Ihren Nutzeranmeldedaten im Cloud SDK an.

    gcloud auth login
    

Ihre Python-Umgebung ist jetzt für die Authentifizierung bei Artifact Registry konfiguriert.

Beispielpaket abrufen

Wenn Sie ein Python-Projekt erstellen, werden Distributionsdateien in einem dist-Unterverzeichnis in Ihrem Python-Projekt gespeichert. Um die Kurzanleitung zu vereinfachen, laden Sie vorkonfigurierte Paketdateien herunter.

  1. Erstellen Sie einen Python-Projektordner mit dem Namen python-quickstart.

    mkdir python-quickstart
    
  2. Erstellen Sie ein Unterverzeichnis mit dem Namen dist und wechseln Sie dann in das Verzeichnis.

    mkdir python-quickstart/dist
    cd python-quickstart/dist
    
  3. Laden Sie die Python-Beispielpakete herunter, die in der Anleitung Python-Paketerstellung für Python-Projekte erstellen verwendet werden.

    pip download sampleproject
    

    Der Befehl lädt das sampleproject-Paket und seine Abhängigkeit peppercorn herunter.

Paket in das Repository hochladen

Verwenden Sie Twine, um Ihre Pakete in Ihr Repository hochzuladen.

  1. Wechseln Sie vom Verzeichnis dist zum übergeordneten Verzeichnis python-quickstart.

    cd ..
    
  2. Laden Sie die Pakete aus dem Verzeichnis dist in das Repository hoch.

    twine upload --repository-url https://us-central1-python.pkg.dev/PROJECT_ID/quickstart-python-repo/ dist/*
    

Twine lädt sowohl sampleproject als auch peppercorn in Ihr Repository hoch.

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-python-repo.

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

gcloud

Um die Pakete im Repository quickstart-python-repo aufzulisten, führen Sie folgenden Befehl aus:

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

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.

Paket installieren

Führen Sie den folgenden Befehl aus, um das Paket zu installieren:

pip install --index-url https://us-central1-python.pkg.dev/PROJECT_ID/quickstart-python-repo/simple/ sampleproject

Fehlerbehebung

Standardmäßig geben Tools wie pip und Twine keine detaillierten Fehlermeldungen zurück. Wenn ein Fehler auftritt, führen Sie den Befehl mit dem Flag --verbose noch einmal aus, um eine detailliertere Ausgabe zu erhalten. Weitere Informationen finden Sie unter Fehlerbehebung für Python-Pakete.

Bereinigen

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

Prüfen Sie vor dem Entfernen des 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-python-repo aus.

  3. Klicken Sie auf Löschen.

gcloud

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

    gcloud artifacts repositories delete quickstart-python-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
    

Wenn Sie die virtuelle Umgebung nicht mehr verwenden und zum globalen Python zurückkehren möchten, führen Sie den folgenden Befehl aus:

deactivate

Wenn Sie den Ordner quickstart beibehalten, können Sie die virtuelle Umgebung in der aktuellen oder neuen Cloud Shell-Sitzung wieder aktivieren, indem Sie den Befehl "enable" noch einmal ausführen. Da alle erforderlichen Pakete für Artifact Registry bereits in der virtuellen Umgebung installiert sind, müssen Sie sie nicht noch einmal einrichten.

source quickstart/bin/activate

Nächste Schritte