GitHub Copilot 現代化代理程式支援基礎架構配置、容器化與部署。 這些功能遵循整個代理中使用的相同計畫建立 → 計畫執行的模式。
工作流程分為兩個階段:
- 基礎架構準備:生成並配置 Azure 基礎架構。
- 容器化與部署:將應用程式容器化並部署。
備註
這兩個階段是獨立的。 你可以同時運行,或是分別使用各階段。 例如,如果你已經配置好環境,可以跳過基礎架構準備,或是先準備基礎架構,之後再部署。
先決條件
- Azure 訂閱:用於基礎設施配置的活躍 Azure 訂閱。
- 更新 CLI:依照 快速啟動指南進行安裝與驗證。
第一階段:基礎建設準備
現代化代理會根據你提供的輸入,建立一個配置 Azure 基礎架構的計畫。 此能力包括設計符合您應用需求的 Azure 登陸區 ,涵蓋網路、身份、治理及安全基礎。
輸入
代理人可利用各種輸入來指導基礎架構計畫:
- 應用程式原始碼:程式碼庫分析以確定技術堆疊、相依性及資源需求。
-
評估報告:來自
modernize assessAzure Migrate 或其他遷移與評估工具的報告。 - 架構圖:儲存庫中的遷移前架構圖或設計文件。
- 合規與安全要求:組織政策、安全標準或著陸區指引,作為資料庫文件或提示詞中的自然語言提供。
制定基礎建設計畫
搭配描述基礎設施需求的提示一起使用 modernize plan create :
modernize plan create "help create azure infrastructure for my app" --plan-name infra-setup
代理程式會產生包含擬議 Azure 架構及詳細資源清單的計畫。 預設情況下,該計畫同時涵蓋 IaC 檔案產生與資源配置。 你只能透過提示請求 IaC 檔案產生。
小提示
將不同的輸入和偏好結合到你的提示中。 例如:
"create an Azure landing zone tailored to my application's architecture and requirements""create azure infrastructure based on the assessment report, following our compliance policies in docs/security-requirements.md""generate Bicep files for the target architecture in the design doc, don't provision yet""provision azure resources based on the architecture diagram and assessment findings"
檢視計畫
執行前檢查輸出檔案:
-
計畫檔案 (
.github/modernize/infra-setup/plan.md):基礎建設策略與擬議架構。 -
任務清單 (
.github/modernize/infra-setup/tasks.json):代理執行的特定任務。
你可以編輯兩個檔案,調整資源設定或在執行前修改方法。
執行基礎建設計畫
執行計畫:
modernize plan execute --plan-name infra-setup
驗證基礎設施
檢視產生的基礎設施程式碼,並透過 Azure 入口網站或 Azure CLI 確認 Azure 資源:
git status
git diff main
第二階段:容器化與部署
使用第二個計畫來容器化你的應用程式並部署。
備註
此階段需要你已經遷移或升級的應用程式原始碼。 在進行容器化和部署前,先完成程式碼現代化。
建立部署計畫
modernize plan create "containerize and deploy my app to azure, subscription: <sub-id>, resource group: <rg-name>" --plan-name deploy
你可以一起容器化並部署,或是各自規劃獨立處理。
- 容器化:為你的專案產生 Docker 檔案並驗證容器映像建置。
- 部署:根據目標 Azure 主機服務建立所有必要的設定檔與清單,部署應用程式,並產生可重複使用的部署腳本供未來使用。
小提示
根據你的需求自訂提示:
-
"containerize my app and create dockerfile":僅進行容器化,而不部署。 -
"deploy my app to the AKS cluster in subscription: <sub-id>, resource group: <rg-name>":部署已經容器化的應用程式。
檢視計畫
檢視已產生的計畫檔案:
-
計畫檔案 (
.github/modernize/deploy/plan.md):容器化與部署策略。 -
任務清單 (
.github/modernize/deploy/tasks.json):特定部署任務。
執行部署計畫
modernize plan execute --plan-name deploy
驗證部署
檢視程式碼變更:檢查已產生的 Docker 檔案、部署清單及設定變更。
git status git diff main驗證執行中的應用程式:透過目標主機服務提供的網址存取已部署的應用程式。
使用互動式模式
你也可以透過互動式 TUI 執行modernize,從選單中選擇「建立現代化計畫」來完成這兩個階段。