本教學課程說明如何將生成式 AI 應用程式部署至 Cloud Run,並使用 Identity-Aware Proxy (IAP) 保護其安全。IAP 可為部署至 Cloud Run 的 HTTPS 應用程式提供中央授權層。您可以採用 IAP,改用應用程式層級或機構層級的存取權控管政策,而非網路層級的防火牆。
請注意,雖然也可以使用手動或第三方驗證機制,保護部署至 Cloud Run 的應用程式,但我們建議針對大量或多區域流量使用 IAP,以免應用程式服務中斷。
在本教學課程中,您將部署會呼叫 Gemini API 的應用程式。 這個應用程式是以 Streamlit 架構為基礎。
必要條件
本教學課程假設您會使用下列工具和架構:
Streamlit:Streamlit 是一個開放原始碼應用程式架構,可讓您建立及部署資料應用程式。這項工具會使用 Python 將資料指令碼轉換為網頁應用程式。
Git:在本教學課程中,您會使用 Git 存放區管理應用程式的原始碼。如要進一步瞭解如何使用 Git,請參閱 Git 說明文件。
Google Cloud 服務
您必須對下列 Google Cloud 服務有基本瞭解:
Vertex AI 中的生成式 AI:提供 Google LLM 的存取權,方便您測試、調整及部署這些模型,然後在應用程式中使用。進一步瞭解 Vertex AI 生成式 AI。
Cloud Run:代管運算平台,可讓您部署及執行容器映像檔。您會建立 Cloud Run 服務來部署應用程式。進一步瞭解 Cloud Run。
Cloud Build:在 Google Cloud上執行建構作業。 在本教學課程中,您將設定自動 Cloud Build 觸發條件,在每次將修訂版本推送到 Git 存放區時,建構應用程式並部署到 Cloud Run。進一步瞭解 Cloud Build。
Cloud Load Balancing:有助於將流量分配到應用程式的多個執行個體,以實現擴充性。您會建立應用程式負載平衡器,將流量分散給 Cloud Run 上代管的應用程式後端執行個體。Cloud Load Balancing 也是 IAP 的必要條件。進一步瞭解 Cloud Load Balancing。
Identity-Aware Proxy (IAP):您可以使用 IAP 建立中央授權層,確保應用程式安全無虞。IAP 會進行驗證和授權檢查,並延伸至連結的 Google Cloud服務。IAP 也支援 Cloud Load Balancing 並與其完美整合,因此是本教學課程中最有效率的安全管理選項。
如要進一步瞭解 IAP,請參閱 Identity-Aware Proxy 總覽。
如要瞭解 IAP 如何與 Cloud Run 搭配運作,請參閱「IAP 的運作方式」一文的「Cloud Run」一節。
有效網域名稱
此外,您必須擁有有效的網域名稱,才能佈建憑證,這是設定負載平衡器時的必要條件。
教學課程頁面
本教學課程包含下列頁面:
每個頁面都假設您已完成教學課程先前頁面的操作說明。