為 Conda 存放區設定 Artifact Registry 驗證

如要允許 Conda CLI 存取 Artifact Registry 存放區,您必須在對 Artifact Registry 提出要求時提供驗證權杖。本頁面說明如何設定 Artifact Registry 的驗證,以存取 Conda 套件存放區。

事前準備

  1. 如果還沒有 Conda 存放區,請建立 Conda 套件存放區。
  2. 確認已安裝 Conda。如果尚未安裝 Conda,請執行並安裝 Miniforge。
  3. 確認您使用的使用者帳戶或服務帳戶具備存取存放區的必要權限。
  4. 安裝 Google Cloud CLI。 完成後,執行下列指令來初始化 Google Cloud CLI:

    gcloud init

    若您採用的是外部識別資訊提供者 (IdP),請先使用聯合身分登入 gcloud CLI。

  5. (選用) 設定 gcloud CLI 指令的預設值。

使用 oauth 權杖驗證頻道

Conda channel 是儲存一或多個 Conda 套件的位置地址。如要在 Conda 環境中安裝套件,必須先將該套件的管道新增至 Conda 設定檔。

如要允許 Conda CLI 直接呼叫 Artifact Registry,請按照下列步驟在 Google Cloud 中驗證 Conda 管道:

  1. 在 gcloud CLI 中執行下列指令,將 oauth 權杖的身分儲存在 TOKEN 變數中:

    export TOKEN="oauth2accesstoken:$(gcloud auth print-access-token)"
    
  2. 在 Conda 設定檔中,將 Conda 存放區新增為管道:

    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
    

    其中:

    • TOKEN 會儲存執行 oauth 產生的 oauth2accesstoken:$(gcloud auth print-access-token) 權杖值。
    • LOCATION 是存放區的區域或多區域位置。
    • PROJECT 是包含存放區的專案 ID。
    • REPOSITORY 是存放區的 ID。

更新過期的 oauth 權杖

oauth 權杖會在 1 小時後失效。如要使用新權杖重新驗證頻道,請按照下列步驟操作:

  1. 從設定檔中移除頻道:

    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. 請按照上一個步驟的說明建立新的 oauth 權杖。

  3. 使用新權杖值,將 Conda 存放區加回 Conda 設定檔。

後續步驟