將 .NET Aspire 部署到 Kubernetes 叢集

2023-12-07 12:05:44

使用Aspirate可以將Aspire程式部署到Kubernetes 叢集

工具安裝

dotnet tool install -g aspirate --prerelease

注意:Aspirate 正在開發中,該軟體包將作為預覽版進行版本控制,--prelease 選項將獲得最新的預覽版。

 

容器註冊中心

您將構建為容器的 csproj 檔案(專案)必須至少包含 ContainerRegistry,否則 sdk 將引發 CONTAINERS1013 錯誤。要解決這個問題,您可以根據需要新增它,或使用「init」命令。

init 命令允許您引導 aspire 專案的某些設定。

  • ContainerRegistry:設定此項後,csproj 中不需要再指定它。
  • ContainerTag: 設定此項後,如果 csproj 中沒有,則將覆蓋使用的容器標籤。
  • TemplatePath:自定義載入轉換為清單的模板時使用的路徑,您可以從源中獲取模板資料夾,並使用所有自定義更改修改您的內容,並且只要您不刪除預留位置, aspirate 將使用它們。

要使用 init 命令,您只需從您的 AppHost 目錄中執行,它會詢問您想要覆蓋哪些設定:

aspirate init

 

生成清單

導航到 Aspire 專案的 AppHost 目錄,然後執行:

aspirate generate

此命令(預設情況下)還將構建選定的專案,並將容器推播到插入的 ContainerRegistry。可以通過傳遞標誌來跳過構建 --skip-build

預設情況下,您的清單將位於 AppHost/aspirate-output目錄中。

 

構建

Build 命令將構建 aspire 清單檔案中定義的所有專案,並將容器推播到插入的 ContainerRegistry。

此命令將首先建立清單檔案,但是如果您使用 --aspire-manifest 或 -m 提供現有清單檔案路徑,則可以覆蓋該檔案。

aspirate build

 

應用

要將清單應用到您的叢集,請執行:

aspirate apply

 

非互動式呼叫

所有命令都可以通過傳遞 --non-interactive 標誌以非互動方式呼叫。

這將導致該工具使用預設上下文並且不提示確認。

使用此標誌時,所有設定引數都必須在命令列上傳遞。

 

解除安裝工具

可以通過執行以下命令將 Aspirate 工具解除安裝:

dotnet tool uninstall -g aspirate

 

https://www.nuget.org/packages/Aspirate

https://github.com/prom3theu5/aspirational-manifests