安裝 PyPI 套件時設定網路連線

Cloud Composer 3 | Cloud Composer 2 | Cloud Composer 1

本頁說明如何在環境中安裝 PyPI 套件時,停用或啟用網路存取權。

如要瞭解如何安裝套件及設定自訂來源 (例如虛擬私人雲端網路中的存放區),請參閱「安裝 Python 依附元件」一文。

如果您想從環境啟用虛擬私有雲網路的存取權,請參閱「將環境連線至虛擬私有雲網路」一文。舉例來說,您可以設定虛擬私有雲網路,讓環境能夠透過該網路存取網際網路。

如要將環境變更為私人 IP,請參閱「變更環境網路類型 (私人或公開 IP)」。

關於安裝 PyPI 套件時的網際網路存取權

  • 根據預設,Cloud Composer 3 環境可在安裝 PyPI 套件時存取網際網路

  • 套件現在可以同時從公開和私人來源安裝。這在 Cloud Composer 2 中是不可能的。

  • 這個環境設定選項與環境的網路類型 (私人或公開 IP) 無關。舉例來說,您可以在私人 IP 環境中安裝 Python Package Index 中的套件。

  • 您可以在建立環境時設定這個設定選項,也可以變更現有環境的這個選項。

安裝 PyPI 套件時,停用或啟用網際網路存取權

主控台

  1. 前往 Google Cloud 控制台的「Environments」頁面。

    前往「環境」

  2. 在環境清單中,按一下環境名稱。「環境詳細資料」頁面隨即開啟。

  3. 前往「環境設定」分頁。

  4. 在「Network configuration」部分中,找出「Access to public PyPI package repositories」項目,然後按一下「Edit」

  5. 在「Access to public PyPI package repositories」對話方塊中:

    • 如要啟用網際網路存取功能,請選取「允許安裝公開網際網路存放區中的套件」

    • 如要停用網際網路存取功能,請選取「不允許安裝公開網際網路存放區中的套件」

  6. 按一下 [儲存]

gcloud

下列 Google Cloud CLI 引數會指定安裝 PyPI 套件時的網路存取設定:

  • --disable-private-builds-only 在安裝套件時啟用網際網路存取權 (預設)。

  • --enable-private-builds-only 會在安裝套件時停用網際網路存取權。

如要在安裝套件時啟用網路存取權,請執行下列 Google Cloud CLI 指令:

gcloud beta composer environments update ENVIRONMENT_NAME \
  --location LOCATION \
  --disable-private-builds-only

如要在安裝套件時停用網際網路存取權,請執行下列 Google Cloud CLI 指令:

gcloud beta composer environments update ENVIRONMENT_NAME \
  --location LOCATION \
  --enable-private-builds-only

更改下列內容:

  • ENVIRONMENT_NAME:環境名稱
  • LOCATION:環境所在的區域

範例 (停用網際網路存取權):

gcloud beta composer environments update example-environment \
  --location us-central1 \
  --enable-private-builds-only

API

  1. 建立 environments.patch API 要求。

  2. 在這個要求中:

    1. updateMask 參數中指定 config.private_environment_config.enable_private_builds_only 遮罩。

    2. 在要求主體的 enablePrivateBuildsOnly 欄位中,設定必要值:

      • false:安裝 PyPI 套件時啟用網際網路存取權 (預設)。
      • true:安裝 PyPI 套件時停用網際網路存取功能。

範例 (停用網際網路存取權):

// PATCH https://composer.googleapis.com/v1beta1/projects/example-project/
// locations/us-central1/environments/example-environment?updateMask=
// config.private_environment_config.enable_private_builds_only

"config": {
  "privateEnvironmentConfig": {
    "enablePrivateBuildsOnly": true
  }
}

Terraform

config 區塊中的 enable_private_builds_only 欄位會指定安裝 PyPI 套件時的網路存取設定:

  • false 或省略:在安裝套件時啟用網際網路存取權 (預設)。

  • true:安裝套件時停用網際網路存取權。

resource "google_composer_environment" "example" {
  provider = google-beta
  name = "ENVIRONMENT_NAME"
  region = "LOCATION"

  config {
    enable_private_builds_only = PRIVATE_BUILDS_MODE
  }
}

更改下列內容:

  • ENVIRONMENT_NAME:環境名稱。
  • LOCATION:環境所在的地區。
  • PRIVATE_BUILDS_MODE:安裝 PyPI 套件時是否停用網際網路存取權。

範例 (停用網際網路存取權):

resource "google_composer_environment" "example" {
  provider = google-beta
  name = "example-environment"
  region = "us-central1"

  config {

    enable_private_builds_only = true

    ... other configuration parameters

  }

後續步驟