設定 Web 部署的 TFS 組建伺服器
演講者:Jason Lee
本主題介紹如何準備 Team Foundation Server (TFS) 建置伺服器,以使用 Team Build 和網際網路資訊服務 (IIS) Web 部署工具 (Web Deploy) 建置和部署解決方案。
本主題構成一系列教學課程的一部分,該系列教學課程圍繞著一家名為 Fabrikam, Inc. 的虛構公司的企業部署要求。本教學課程系列使用範例解決方案 (連絡人管理員解決方案) 來表示具有實際複雜程度的 Web 應用程式,包括 ASP.NET MVC 3 應用程式、Windows Communication Foundation (WCF) 服務和資料庫專案。
這些教學課程的核心部署方法是基於「了解專案檔案」中所述的分割專案檔案方法,其中建置程序由兩個專案檔案控制 - 一個包含適用於每個目標環境的建置指令,以及一個包含特定於環境的建置和部署設定。 在建置時,環境專屬的專案檔案被合併到與環境無關的專案檔案中,以形成完整的建置指令集。
任務概述
要準備建置伺服器來建置和部署您的解決方案,您需要:
- 安裝和設定 TFS 建置服務。
- 安裝 Visual Studio 2010。
- 安裝建置解決方案所需的任何產品或元件,例如 .NET Framework 或 ASP.NET MVC 的版本。
- 安裝 Web 部署 2.0 或更高版本。
本主題將示範如何執行這些程序或指向存在的其他資源。 本主題中的任務和演練假設:
- 您將從執行 Windows Server 2008 R2 Service Pack 1 的乾淨伺服器版本開始。
- 伺服器使用靜態 IP 位址加入網域。
- 您已在單獨的伺服器上安裝了 TFS 應用程式層,如「企業 Web 部署:情境概述」中所述。
誰執行這些程序?
在大多數情況下,TFS 管理員將負責設定建置伺服器。 在某些情況下,開發團隊可能擁有特定建置伺服器的所有權。
安裝和設定 TFS 建置服務
設定建置伺服器時,您的第一個任務是安裝和設定 TFS 建置服務。 作為此程序的一部分,您需要:
- 安裝 TFS 建置服務並設定服務帳戶。 任何建置任務 (包括部署) 都將使用建置服務帳戶的身分來執行。
- 建立一個建置控制器和一個或多個建置代理程式。 每個建置控制器管理一組建置代理程式。 當您對建置進行排隊時,建置控制器會將建置任務指派給可用的建置代理程式。 TFS 中的每個團隊專案集合都對應到單一建置控制器。
- 為建置輸出設定放置資料夾。 這是網路共享。 任何建置輸出 (例如 Web 部署包) 都會傳送到放置資料夾。
MSDN 上的「管理 Team Foundation Build」章節包含執行這些任務所需的所有資源:
- 有關 Team Foundation Build 的概念概述 (包括建置服務、建置控制器和建置代理程式),請參閱「了解 Team Foundation 建置系統」。
- 有關安裝和設定建置服務的資訊,請參閱「設定建置機器」。
- 有關建立建置控制器的資訊,請參閱「建立和使用建置控制器」。
- 有關建立建置代理程式的資訊,請參閱「建立和使用建置代理程式」。
- 有關建立和設定放置資料夾的資訊,請參閱「設定放置資料夾」。
安裝所需的產品和元件
要讓建置伺服器能夠建立您的解決方案,您必須安裝解決方案所需的任何產品、元件或組件。 在安裝任何 Web 平台元件之前,應在生成伺服器上安裝 Visual Studio 2010 (任何版本)。 這可確保核心 Microsoft Build 引擎 (MSBuild) 目標檔案和 Web 發佈管線 (WPP) 目標檔案可供產生服務使用。 Visual Studio 安裝程式也應安裝 Web Deploy,如果您打算在建置程序中部署 Web 套件,則需要安裝 Web Deploy。
安裝常見 Web 平台元件的最佳方法是使用 Web 平台安裝程式。 這可確保您安裝每個產品的最新版本,並且它還會自動檢測並安裝每個產品的任何先決條件。 對於連絡人管理員解決方案,您應該使用 Web 平台安裝程式來安裝下列產品和元件:
- .NET Framework 4.0。 這是執行在此版本的 .NET Framework 上建立的應用程式所必需的。
- Web Deployment Tool 2.1 或更高版本。 這將在您的伺服器上安裝 Web 部署 (及其底層可執行檔 MSDeploy.exe)。 作為此程序的一部分,它會安裝並啟動 Web 部署代理服務。 此服務可讓您從遠端電腦部署 Web 套件。
- ASP.NET MVC 3。 這將安裝執行 ASP.NET MVC 3 應用程式所需的組件。
要安裝所需的產品和元件
安裝 Visual Studio 2010。 當提示您選擇要安裝的功能時,您應該包括:
您需要編譯的任何程式語言。
視覺化網路開發人員。 這可確保 WPP 目標新增至您的建置伺服器。
Visual Studio 2010 安裝完成後,下載並安裝 Visual Studio 2010 Service Pack 1 (如果安裝媒體中尚未包含它)。
注意
Visual Studio 2010 Service Pack 1 解決了一個可能會阻止 MSBuild 定位 MSDeploy 執行檔的錯誤。
下載並啟動 Web 平台安裝程式。
在 Web Platform Installer 3.0 視窗頂部,按一下「產品」。
在視窗左側的導覽窗格中,按一下「Frameworks」。
在 Microsoft .NET Framework 4 行中,如果尚未安裝 .NET Framework,請按一下「新增」。
注意
您可能已經透過 Windows Update 安裝了 .NET Framework 4.0。 如果產品或元件已安裝,Web Platform Installer 將透過將「新增」按鈕替換為「已安裝」文字來指示這一點。
在 ASP.NET MVC 3 (Visual Studio 2010) 行中,按一下「新增」。
在導覽窗格中,按一下「伺服器」。
在「Web Deployment Tool 2.1」行中,按一下「新增」。
按一下 [安裝]。 Web Platform Installer 會顯示要安裝的產品清單以及任何關聯的依賴項,並提示您接受授權條款。
查看授權條款,如果您同意這些條款,請按一下「我接受」。
安裝完成後,按一下「完成」,然後關閉「Web Platform Installer 3.0」視窗。
注意
如果您的部署程序包含使用 VSDBCMD.exe 或 SQLCMD.exe 等工具,則需要確保這些工具已安裝在建置伺服器上。 VSDBCMD.exe 是一個 Visual Studio 工具,通常在安裝 Team Foundation Build 時會加入到伺服器中。 SQLCMD.exe 是一個 SQL Server 工具。 您可以從 Microsoft SQL Server 2008 R2 功能套件頁面下載 SQLCMD.exe 的獨立版本。
結論
此時,您的建置伺服器已準備好開始建置和部署您的 Web 應用程式專案。 下一主題「建立支援部署的建置定義」介紹如何建立和設定建置定義,以控制專案建置和部署的時間和方式。
深入閱讀
有關使用 Team Build 的更多一般指南,請參閱「管理 Team Foundation Build」。