從 Cloud Run 連線

本頁面將逐步說明如何使用 Google Cloud 控制台和用戶端應用程式,在 Cloud Run 服務上部署範例應用程式。這個範例應用程式會將 Cloud Run 連線至 PostgreSQL 適用的 AlloyDB。

事前準備

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. Verify that billing is enabled for your Google Cloud project.

  4. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  5. Verify that billing is enabled for your Google Cloud project.

  6. 啟用必要的 Cloud API,以便在 Cloud Run 上執行 PostgreSQL 適用的 AlloyDB 範例應用程式。

    啟用 API

    1. 在「確認專案」步驟中,按一下「下一步」,確認要變更的專案名稱。

    2. 在「啟用 API」步驟中,按一下「啟用」,啟用下列項目:

      • AlloyDB API
      • Cloud Run Admin API
      • Compute Engine API
      • Cloud Build API
      • Container Registry API
      • Service Networking API
      • Cloud Resource Manager API
  7. 建立叢集及其主要執行個體

    1. 前往 Google Cloud 控制台的「Clusters」(叢集) 頁面。

      前往「Clusters」(叢集) 頁面

    2. 按一下 [Create cluster] (建立叢集)

      Google Cloud 控制台會提供叢集類型供您選擇。選取「高可用性」

    3. 按一下「繼續」

      「設定叢集」部分會展開。

    4. 在「基本資訊」下方的「叢集 ID」欄位中,輸入 my-cluster

    5. 在「Password」(密碼) 欄位中輸入任意密碼。請記下這組密碼,您會在稍後的快速入門導覽課程中再次使用。

    6. 在「Region」(區域) 欄位中,選取「us-central1 (Iowa)」。

    7. 在「連線」的「網路」下拉式選單中,選取 default

      如果您尚未設定私人服務存取權,系統會顯示「必須使用私人服務連線」對話方塊。

      在「Private services access connection required」(必須使用私人服務連線) 對話方塊中,如要建立私人服務連線,請完成下列步驟:

      1. 按一下「設定連線」

        系統會顯示標示為「啟用 Service Networking API」的新窗格

      2. 在窗格中,選取「使用系統自動分配的 IP 範圍」

      3. 按一下「繼續」

      4. 按一下「建立連線」,然後等待連線設定完成。

        窗格就會移除。

    8. 按一下「繼續」

      「設定主要執行個體」部分會展開。

    9. 在「基本資訊」下方的「Instance ID」(執行個體 ID) 欄位中輸入 my-primary

    10. 選取「機器」值旁的 2 vCPU, 16 GB

    11. 按一下 [Create cluster] (建立叢集)

      等待叢集建立完成。

    連線至執行個體並建立資料庫

    1. 如果不在新建立的叢集「總覽」頁面,請前往 Google Cloud 控制台的「叢集」頁面。

      前往「Clusters」(叢集) 頁面

    2. 如要顯示叢集「總覽」頁面,請按一下 my-cluster 叢集名稱。

    3. 在導覽選單中,按一下「AlloyDB Studio」

    4. 在「Sign in to AlloyDB Studio」(登入 AlloyDB Studio) 頁面的「Database」(資料庫) 清單中,選取 postgres

    5. 在「使用者」下拉式清單中,選取 postgres

    6. 在「Password」(密碼) 欄位中,輸入您在「建立叢集及其主要執行個體」中建立的密碼。

    7. 按一下「驗證」。「Explorer」窗格會顯示資料庫中的物件清單。

    8. 在「Editor 1」分頁中,建立資料庫:

      CREATE DATABASE quickstart_db;
      
    9. 按一下「執行」。等待「結果」窗格顯示 Statement executed successfully 訊息。

    找出專案 ID

    1. 前往 Google Cloud 控制台的「Dashboard」(資訊主頁) 頁面。

      前往資訊主頁

    2. 在「專案資訊」資訊卡中找出專案 ID。

    3. 記下專案 ID。您會在快速入門導覽課程的下一個步驟中使用。

    將範例應用程式的映像檔填入 Artifact Registry

    1. 在 Google Cloud 控制台中開啟 Cloud Shell

      開啟 Cloud Shell

    2. 在 Cloud Shell 編輯器中,使用下列指令從 GitHub 複製存放區和範例應用程式程式碼:

      cloudshell_open --repo_url \
      "https://github.com/GoogleCloudPlatform/alloydb-auth-proxy" \
      --dir \
      "examples/go" \
      --force_new_clone
    3. 在 Artifact Registry 中建立 Docker 映像檔存放區:

      gcloud artifacts repositories create cloud-run-source-deploy --location us-central1 --repository-format=docker --project PROJECT_ID

      PROJECT_ID 替換為專案 ID。

    4. 在「授權 Cloud Shell」對話方塊中,按一下「授權」。如果您先前已完成這個步驟,系統就不會顯示這項提示。

    5. 如要建構 Docker 容器並發布至 Artifact Registry,請使用下列指令:

       gcloud builds submit --tag  us-central1-docker.pkg.dev/PROJECT_ID/cloud-run-source-deploy/run-sql --project PROJECT_ID

      PROJECT_ID 替換為專案 ID。

    找出新執行個體的 IP 位址

    1. 前往 Google Cloud 控制台的「Clusters」(叢集) 頁面。

      前往「Clusters」(叢集)

    2. 在表格中找出「資源名稱」my-primary 的資料列。

    3. 請記下該列的私人 IP 位址。您會在快速入門導覽課程的下一個步驟中使用。

      IP 位址的格式範例為 172.19.209.2:5432

    建立 Cloud Run 服務

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

      前往 Cloud Run

    2. 在「Services」(服務) 分頁中,按一下「Deploy Container」(部署容器)

    3. 在「建立服務」頁面中,選取「透過現有的容器映像檔部署單一修訂版本」選項。

    4. 在「Container image URL」(容器映像檔網址) 欄位中,按一下「Select」(選取)

    5. 在「Select container image」(選取容器映像檔) 窗格中,完成下列步驟:

      1. 選取「Artifact Registry」分頁標籤。
      2. 展開「us-central1-docker.pkg.dev/PROJECT_ID/cloud-run-source-deploy」。
      3. 展開「run-sql」。
      4. 選取最新的映像檔。
      5. 按一下「選取」
    6. 在「Service name」(服務名稱) 欄位中輸入 quickstart-service

    7. 確認「區域」清單預設選取「us-central1 (Iowa)」。

    8. 在「Authentication」(驗證) 部分中,選取「Allow unauthenticated invocations」(允許未經驗證的叫用)

    9. 確認已在「CPU allocation and pricing」(CPU 分配和定價) 部分選取「CPU is only allocated during request processing」(只在要求處理期間分配 CPU)

    10. 展開「容器、磁碟區、網路與安全性」部分。

    11. 在「容器」分頁中,選取「變數和密鑰」分頁,然後完成下列步驟:

      1. 在「環境變數」部分,按一下「新增變數」

      2. NameValue 欄位中輸入下列內容:

        • DB_NAMEquickstart_db
        • DB_USERpostgres
        • DB_PASS:在「建立叢集及其主要執行個體」中建立叢集時輸入的密碼。
        • DB_PORT5432
        • INSTANCE_HOST:叢集主要執行個體的 IP 位址,您可以在「找出新執行個體的 IP 位址」中找到。請勿加入通訊埠編號,例如設為 172.19.209.2,而非 172.19.209.2:5432
    12. 從「Container(s)」分頁切換至「Networking」分頁,然後完成下列步驟:

      1. 勾選「連線至虛擬私有雲,以傳出流量」核取方塊。

      2. 選取「直接將流量傳送至虛擬私有雲」選項。

      3. 在「Network」(網路) 下拉式清單中,選擇 default 值。

      4. 在「子網路」下拉式清單中,確認已選取 default 值。

    13. 按一下「建立」,即可建立 Cloud Run 服務。

      Cloud Run 服務部署完成後,「quickstart-service」頁面的「URL」欄位會顯示範例應用程式的網址。

      應用程式使用 AlloyDB 做為資料儲存庫。

    查看範例應用程式

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

      前往 Cloud Run

    2. 在「quickstart-service」頁面中,按一下「複製到剪貼簿」,複製應用程式網址。

    3. 在新瀏覽器分頁中,貼上複製的應用程式網址,然後按一下 Enter 鍵

      顯示的投票收集網頁應用程式範例如下:

      分頁和空格範例應用程式

    清除所用資源

    如要避免系統向您的 Google Cloud 帳戶收取本頁所用資源的費用,請按照下列步驟操作。

    清理叢集

    1. 前往 Google Cloud 控制台的「Clusters」(叢集) 頁面。

      前往「Clusters」(叢集)

    2. 找到要刪除的 my-cluster 叢集,然後依序點按旁邊的「動作」圖示 「刪除」。

    3. 在隨即顯示的「Delete cluster」(刪除叢集) 對話方塊中,於「my-cluster」(我的叢集) 欄位中輸入 my-cluster,確認要刪除叢集。

    4. 點選「刪除」。

    清除服務

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

      前往 Cloud Run

    2. 選取「quickstart-service」服務名稱旁的核取方塊。

    3. 按一下「Cloud Run」頁面頂端的「刪除」圖示

    4. 在隨即顯示的「Delete quickstart-service」(刪除快速入門服務) 對話方塊中,按一下「Delete」(刪除) 進行確認。

    後續步驟