簡體   English   中英

使用 Azure Devops 將控制台應用程序部署到 Azure VM 上的文件系統

[英]Deploying a console app to the filesystem on an Azure VM using Azure Devops

我有一個用 .Net 核心編寫的控制台應用程序,它用作 Windows 服務。 我的目標是使用 Azure DevOps 將其部署到我們的其中一個 VM,以便我們可以將應用程序安裝為服務並讓它輪詢內部 api 並在幕后的計時器上運行一些業務邏輯。

我的構建管道在 DevOps 中就位,並且正在生成必要的工件(基本上是我想要部署到 VM 的文件夾)作為 zip 文件,但我現在遇到的問題是部署到文件系統。

通常在 Devops 中,我們將使用連接到 Azure 租戶的服務原則或應用程序服務部署到 IIS,這意味着為我們完成了大量驗證等工作,但是,在瀏覽 Microsoft 文檔后,我找不到有關如何操作的示例使用服務原則(本質上是 DevOps 和 VM 之間經過驗證的連接)部署到 VM 的文件系統。

有沒有人有任何關於為此使用哪個任務的指示? 我正在通過 SSH 選項查看傳輸文件,它似乎允許您選擇服務原則(無論如何我們已經將 IIS 網站部署到該服務器),因此理論上我相信我可以使用它。

非常感謝此場景的任何幫助或指示/最佳實踐。

對於這個需求,你不能使用服務原則,因為虛擬機需要一個賬號來認證。 例如,對於 Azure 文件復制任務,您仍然需要指定用戶名和密碼。

我建議您可以通過deployment group 來完成

  1. 創建新的部署組
  2. 將部署代理注冊到這些 Azure VM 上的該部署組。
  3. 編輯管道並使用先前的部署組添加部署作業。
  4. 然后可以將所有相關工件下載到該 Azure VM,您可以添加其他任務來執行其他操作。

我的構建管道正在將必要的工件生成為 zip 文件,但我現在遇到的問題是部署到文件系統。

對於這個問題,可以先嘗試使用Azure File Copy任務將zip文件復制到Azure VM。

當目標是 Azure VM 時,文件首先復制到自動生成的 Azure blob 容器,然后下載到 VM。 將文件成功復制到 VM 后,將刪除容器。

然后您可以在目標機器任務上使用PowerShell並編寫簡單的內聯腳本來解壓縮 zip 文件,然后運行 ​​.exe 文件。 此外,您還需要在虛擬機上進行遠程配置。 這篇文章可能會幫助你解決這個問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM