Authentifizierung für Artifact Registry für Conda-Repositories konfigurieren

Damit die Conda-Befehlszeile auf Artifact Registry-Repositories zugreifen kann, müssen Sie Anfragen an Artifact Registry ein Authentifizierungstoken bereitstellen. Auf dieser Seite wird beschrieben, wie Sie die Authentifizierung mit einem Artifact Registry-Repository für Conda-Pakete konfigurieren.

Hinweis

  1. Wenn Sie noch kein Conda-Repository haben, erstellen Sie ein Conda-Paket-Repository.
  2. Prüfen Sie, ob Conda installiert ist. Wenn Conda nicht installiert ist, führen Sie Miniforge aus und installieren Sie es.
  3. Prüfen Sie, ob das von Ihnen verwendete Nutzerkonto oder Dienstkonto die erforderlichen Berechtigungen für den Zugriff auf das Repository hat.
  4. Installieren Sie die Google Cloud CLI. Initialisieren Sie die Google Cloud CLI nach der Installation mit dem folgenden Befehl:

    gcloud init

    Wenn Sie einen externen Identitätsanbieter (IdP) verwenden, müssen Sie sich zuerst mit Ihrer föderierten Identität in der gcloud CLI anmelden.

  5. (Optional) Standardeinstellungen für gcloud CLI-Befehle konfigurieren.

Kanal mit oauth-Tokens authentifizieren

Ein Conda-Channel ist die Adresse eines Ortes, an dem ein oder mehrere Conda-Pakete gespeichert sind. Bevor Sie Pakete in Ihrer Conda-Umgebung installieren können, müssen Sie den Channel für dieses Paket Ihrer Conda-Konfigurationsdatei hinzufügen.

Damit die Conda-Befehlszeile Artifact Registry direkt aufrufen kann, müssen Sie Ihren Conda-Channel in Google Cloud authentifizieren. Gehen Sie dazu so vor:

  1. Führen Sie in der gcloud CLI den folgenden Befehl aus, um die Identität eines oauth-Tokens in einer TOKEN-Variablen zu speichern:

    export TOKEN="oauth2accesstoken:$(gcloud auth print-access-token)"
    
  2. Fügen Sie Ihr Conda-Repository als Channel in Ihre Conda-Konfigurationsdatei ein:

    Conda

    conda config --add channels \
    https://$TOKEN@LOCATION-conda.pkg.dev/PROJECT/REPOSITORY
    

    Miniforge

    conda config --add channels \
    https://$TOKEN@LOCATION-conda.pkg.dev/PROJECT/REPOSITORY
    

    Mamba

    mamba config --add channels \
    https://$TOKEN@LOCATION-conda.pkg.dev/PROJECT/REPOSITORY
    

    Micromamba

    micromamba config --add channels \
    https://$TOKEN@LOCATION-conda.pkg.dev/PROJECT/REPOSITORY
    

    Wobei:

    • In TOKEN wird der Wert des oauth-Tokens gespeichert, der durch Ausführen von oauth2accesstoken:$(gcloud auth print-access-token) generiert wird.
    • LOCATION ist der regionale oder multiregionale Standort für das Repository.
    • PROJECT ist die ID des Projekts, das das Repository enthält.
    • REPOSITORY ist die ID des Repositorys.

Abgelaufenes oauth-Token aktualisieren

Ein oauth-Token läuft nach einer Stunde ab. So authentifizierst du deinen Kanal mit einem neuen Token:

  1. Entferne deinen Kanal aus der Konfigurationsdatei:

    Conda

    conda config --remove channels CHANNEL_NAME
    

    Miniforge

    conda config --remove channels CHANNEL_NAME
    

    Mamba

    mamba config --remove channels CHANNEL_NAME
    

    Micromamba

    micromamba config --remove channels CHANNEL_NAME
    
  2. Folgen Sie dem vorherigen Schritt, in dem beschrieben wird, wie Sie ein neues oauth-Token erstellen.

  3. Fügen Sie Ihr Conda-Repository mit Ihrem neuen Tokenwert wieder in Ihre Conda-Konfigurationsdatei ein.

Nächste Schritte