日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

使用 Visual Studio Team Services 和 IIS 创建持续集成管道

發布時間:2025/3/21 编程问答 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 使用 Visual Studio Team Services 和 IIS 创建持续集成管道 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

若要將應用程序開發的生成、測試和部署階段自動化,可以使用持續集成和部署 (CI/CD) 管道。 本教程介紹如何在 Azure 中使用 Visual Studio Team Services 和 Windows 虛擬機 (VM) 創建一個運行 IIS 的 CI/CD 管道。 你將學習如何執行以下操作:

  • 將 ASP.NET Web 應用程序發布到 Team Services 項目
  • 創建由代碼提交觸發的生成定義
  • 在 Azure 中的虛擬機上創建和配置 IIS
  • 將 IIS 實例添加到 Team Services 中的部署組
  • 創建發布定義,用于將新的 Web 部署包發布到 IIS
  • 測試 CI/CD 管道

本教程需要 Azure PowerShell 模塊 3.6 或更高版本。 運行?Get-Module -ListAvailable AzureRM?即可查找版本。 如果需要進行升級,請參閱?Install Azure PowerShell module(安裝 Azure PowerShell 模塊)。

在 Team Services 中創建項目

使用 Visual Studio Team Services 可以輕松進行協作和開發,而無需維護本地代碼管理解決方案。 Team Services 提供云代碼測試、生成和應用程序見解信息。 可以選擇最適合用于代碼開發的版本控制存儲庫和 IDE。 對于本教程,可以使用免費帳戶來創建基本的 ASP.NET Web 應用和 CI/CD 管道。 如果還沒有 Team Services 帳戶,請創建一個。

若要管理代碼提交過程、生成定義及發布定義,請按如下所示在 Team Services 中創建一個項目:

  • 在 Web 瀏覽器中打開 Team Services 儀表板,然后選擇“新建項目”。
  • 為“項目名稱”輸入?myWebApp。 保留其他所有默認值,以便使用“Git”版本控制和“Agile”工作項過程。
  • 選擇“與團隊成員共享”選項,然后選擇“創建”。
  • 創建項目后,請選擇“使用自述文件或 gitignore 初始化”選項,然后選擇“初始化”。
  • 在新項目中,選擇頂部的“儀表板”,然后選擇“在 Visual Studio 中打開”。
  • 創建 ASP.NET Web 應用程序

    上一步驟已在 Team Services 中創建一個項目。 最后一個步驟是在 Visual Studio 中打開新項目。 可在“團隊資源管理器”窗口中管理代碼提交。 創建新項目的本地副本,然后通過模板創建 ASP.NET Web 應用程序,如下所示:

  • 選擇“克隆”,創建 Team Services 項目的本地 git 存儲庫。

  • 在“解決方案”下面,選擇“新建”。

  • 選擇“Web”模板,然后選擇“ASP.NET Web 應用程序”模板。

  • 輸入應用程序的名稱(例如?myWebApp),并取消選中“創建解決方案的目錄”所對應的框。
  • 取消選中“將 Application Insights 添加到項目”所對應的框(如果該選項可用)。 Application Insights 要求使用 Azure Application Insights 為 Web 應用程序授權。 本教程為了保持內容簡潔,已跳過此過程。
  • 選擇“確定” 。
  • 從模板列表中選擇“MVC”。
  • 依次選擇“更改身份驗證”、“無身份驗證”、“確定”。
  • 選擇“確定”,創建解決方案。
  • 在“團隊資源管理器”窗口中選擇“更改”。

  • 在提交文本框中輸入一條消息,例如“初始提交”。 從下拉菜單中選擇“全部提交并同步”。

  • 創建生成定義

    在 Team Services 中,可以使用生成定義來概述如何生成應用程序。 本教程將創建一個基本的定義,它采用我們的源代碼,生成解決方案,然后創建可用于在 IIS 服務器上運行 Web 應用的 Web 部署包。

  • 在 Team Services 項目的頂部選擇“生成和發布”,然后選擇“生成”。
  • 選擇“+ 新建定義”。
  • 選擇“ASP.NET (預覽)”模板,然后選擇“應用”。
  • 保留所有默認任務值。 在“獲取源”下面,確保已選擇“myWebApp”存儲庫和“master”分支。

  • 在“觸發器”選項卡上,將“啟用此觸發器”對應的滑塊移動到“已啟用”。

  • 保存生成定義,選擇“保存并排隊”將新的生成排入隊列,然后再次選擇“保存并排隊”。 保留默認值并選擇“排隊”。
  • 監視生成在托管代理上的計劃過程,然后開始生成。 輸出類似于以下示例:

    創建虛擬機

    若要提供一個平臺來運行 ASP.NET Web 應用,需要一個運行 IIS 的 Windows 虛擬機。 提交代碼和觸發生成時,Team Services 使用代理與 IIS 實例交互。

    使用此腳本示例創建 Windows Server 2016 VM。 該腳本需要花費幾分鐘來運行和創建 VM。 創建 VM 后,請使用?Add-AzureRmNetworkSecurityRuleConfig?為 Web 流量打開端口 80,如下所示:

    PowerShell復制 Get-AzureRmNetworkSecurityGroup ` -ResourceGroupName $resourceGroup ` -Name "myNetworkSecurityGroup" | ` Add-AzureRmNetworkSecurityRuleConfig ` -Name "myNetworkSecurityGroupRuleWeb" ` -Protocol "Tcp" ` -Direction "Inbound" ` -Priority "1001" ` -SourceAddressPrefix "*" ` -SourcePortRange "*" ` -DestinationAddressPrefix "*" ` -DestinationPortRange "80" ` -Access "Allow" | ` Set-AzureRmNetworkSecurityGroup

    若要連接到 VM,請使用?Get-AzureRmPublicIpAddress?獲取公共 IP 地址,如下所示:

    PowerShell復制 Get-AzureRmPublicIpAddress -ResourceGroupName $resourceGroup | Select IpAddress

    與 VM 建立遠程桌面會話:

    cmd復制 mstsc /v:<publicIpAddress>

    在 VM 上,打開“管理員 PowerShell”命令提示符。 按如下所示安裝 IIS 和所需的 .NET 功能:

    PowerShell復制 Install-WindowsFeature Web-Server,Web-Asp-Net45,NET-Framework-Features

    創建部署組

    若要將 Web 部署包推送到 IIS 服務器,請在 Team Services 中定義一個部署組。 將代碼提交到 Team Services 以及完成生成時,可在此組中指定哪些服務器要用作新生成的目標。

  • 在 Team Services 中選擇“生成和發布”,然后選擇“部署組”。
  • 選擇“添加部署組”。
  • 輸入組的名稱(例如?myIIS),然后選擇“創建”。
  • 在“注冊計算機”部分中,請確保已選擇“Windows”,然后選中“使用腳本中的個人訪問令牌進行身份驗證”所對應的框。
  • 選擇“將腳本復制到剪貼板”。
  • 將 IIS VM 添加到部署組

    創建部署組后,請將每個 IIS 實例添加到該組。 Team Services 將生成一個腳本,用于在 VM 上下載并配置一個代理,以便接收新的 Web 部署包,然后將這些包應用到 IIS。

  • 返回到 VM 上的“管理員 PowerShell”會話,粘貼并運行從 Team Services 復制的腳本。
  • 當系統提示配置代理的標記時,請選擇“Y”,然后輸入?web。
  • 當系統提示輸入用戶帳戶時,請按?Return?接受默認值。
  • 等待腳本完成并出現消息“服務 vstsagent.account.computername 已成功啟動”。
  • 在“生成和發布”菜單的“部署組”頁中,打開?myIIS?部署組。 在“計算機”選項卡上,檢查你的 VM 是否已列出。

  • 創建發布定義

    若要發布生成,請在 Team Services 中創建發布定義。 成功生成應用程序時,會自動觸發此定義。 選擇要將 Web 部署包推送到的部署組,然后定義相應的 IIS 設置。

  • 選擇“生成和發布”,然后選擇“生成”。 選擇在上一步驟中創建的生成定義。
  • 在“最近完成”下面選擇最近的生成,然后選擇“發布”。
  • 選擇“是”創建發布定義。
  • 選擇“空”模板,然后選擇“下一步”。
  • 檢查項目中是否已填充項目與源生成定義。
  • 選中“持續部署”復選框,然后選擇“創建”。
  • 選擇“+ 添加任務”旁邊的下拉列表框,然后選擇“添加部署組階段”。

  • 選擇“IIS Web 應用部署(預覽)”旁邊的“添加”,然后選擇“關閉”。

  • 選擇“在部署組上運行”父任務。

  • 對于“部署組”,請選擇前面創建的部署組,例如?myIIS。
  • 在“計算機標記”框中,選擇“添加”,然后選擇“web”標記。

  • 選擇“部署: IIS Web 應用部署”任務以配置 IIS 實例設置,如下所示:

  • 對于“網站名稱”,請輸入“默認網站”。
  • 保留其他所有默認設置。
  • 選擇“保存”,然后選擇“確定”兩次。
  • 創建版本并發布

    現在,可將 Web 部署包推送為新版本。 此步驟將與構成部署組的每個實例上的代理通信,推送 Web 部署包,然后將 IIS 配置為運行更新的 Web 應用程序。

  • 在發布定義中選擇“+ 發布”,然后選擇“創建發布”。
  • 檢查下拉列表中是否已選擇最新的生成以及“自動化部署: 創建發布后”。 選擇“創建” 。
  • 發布定義的頂部將顯示一個小標題,例如“已創建發布‘Release-1’”。 選擇發布鏈接。
  • 打開“日志”選項卡查看發布進度。

  • 發布完成后,請打開 Web 瀏覽器并輸入 VM 的公共 IIP 地址。 ASP.NET Web 應用程序正在運行。

  • 測試整個 CI/CD 管道

    在 IIS 上運行 Web 應用程序后,請嘗試測試整個 CI/CD 管道。 在 Visual Studio 中進行更改并提交代碼后,將觸發生成,然后觸發將更新的 Web 部署包發布到 IIS 的過程:

  • 在 Visual Studio 中打開“解決方案資源管理器”窗口。
  • 導航到“myWebApp”|“視圖”|“主頁”|“Index.cshtml”并將它打開
  • 編輯第 6 行,如下所示:

    <h1>ASP.NET with VSTS and CI/CD!</h1>

  • 保存文件。

  • 打開“團隊資源管理器”窗口,選擇“myWebApp”項目,然后選擇“更改”。
  • 輸入提交消息(例如“測試 CI/CD 管道”),然后從下拉菜單中選擇“全部提交并同步”。
  • 在 Team Services 工作區中,已通過代碼提交觸發了新的生成。
    • 選擇“生成和發布”,然后選擇“生成”。
    • 選擇生成定義,然后選擇“已排隊和正在運行”生成來監視生成進度。
  • 成功生成后,將觸發新的發布。
    • 選擇“生成和發布”,然后選擇“發布”查看已推送到 IIS VM 的 Web 部署包。
    • 選擇“刷新”圖標來更新狀態。 如果“環境”列顯示綠色的復選標記,則表示已成功將發布部署到 IIS。
  • 若要查看已應用的更改,請在瀏覽器中刷新 IIS 網站。

  • 后續步驟

    本教程已在 Team Services 中創建一個 ASP.NET Web 應用程序,并配置了生成和發布定義,以便每次提交代碼時將新的 Web 部署包部署到 IIS。 你已了解如何:

    • 將 ASP.NET Web 應用程序發布到 Team Services 項目
    • 創建由代碼提交觸發的生成定義
    • 在 Azure 中的虛擬機上創建和配置 IIS
    • 將 IIS 實例添加到 Team Services 中的部署組
    • 創建發布定義,用于將新的 Web 部署包發布到 IIS
    • 測試 CI/CD 管道

    轉到下一教程,了解如何使用 SSL 證書保護 Web 服務器。

    使用 SSL 保護 Web 服務器

    轉載于:https://www.cnblogs.com/zangdalei/p/7873074.html

    總結

    以上是生活随笔為你收集整理的使用 Visual Studio Team Services 和 IIS 创建持续集成管道的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。