Share via


部署和設定組建伺服器

若要使用 Team Foundation Build (TFBuild) 搭配內部部署 Team Foundation Server,您必須部署至少一個組建伺服器。

提示

如果您的 Team 專案集合是裝載在 Visual Studio Online 上,而單一標準組建代理程式可以滿足小組的需要時,您可以使用裝載的組建控制器,而不需要部署您自己的組建代理程式。

每個組建伺服器都可做為單一 Team 專案集合使用。 雖然您直接在執行 Team Foundation Build Service 的電腦上設定、修改和管理組建伺服器,但組態資料實際上是儲存在 Team 專案集合中。

組建伺服器拓撲選項

在組建伺服器上,您可以執行:

  1. 單一組建控制器

  2. 一個或多個組建代理程式

  3. 一個單一組建控制器和一個或多個組建代理程式

您可以在裝載 Team Foundation 應用程式層伺服器的同一部電腦上裝載組建伺服器,但是在大部分情況下,此組建伺服器不應裝載任何組建代理程式。 組建代理程式會大量耗用處理器資源,而這可能導致應用程式層的效能大幅降低。 此外,您也可能想要避免在應用程式層執行組建伺服器元件,以免增加受攻擊面。 如需可行之建置系統拓撲的詳細範例,請參閱向外擴展您的建置系統

必要的使用權限

您必須是組建伺服器上的 Windows Administrators 群組成員,而且是 Team 專案集合上的 Project Collection Build Administrators 群組成員。 請參閱 Team Foundation Server 的權限參考

您想要怎麼做?

  • 了解安全性風險

  • 部署組建伺服器

  • 開始設定組建伺服器

  • 將組建伺服器連接到 Team 專案集合

  • 指定服務帳戶

  • 在互動模式下執行組建伺服器

  • 執行後續步驟

了解安全性風險

安裝 Team Foundation Build Service 會增加電腦的受攻擊面。 舉例來說,由於建置系統將開發人員視為信任的實體,因此惡意使用者就可能建構組建定義,將任意程式碼設計成可接管伺服器並竊取 Team Foundation Server 資料而加以執行。 建議客戶盡量遵循安全性最佳做法以及深度部署防禦措施,以確保其建置環境的安全。 這包括開發人員工作站。 如需安全性最佳做法的詳細資訊,請參閱 TechNet 文章安全性指引(英文)。

部署組建伺服器

您可以透過安裝 Team Foundation Build Service 來部署組建伺服器。 開始這個程序前,以下有一些秘訣可供參考:

  • 您可以將 TFBuild 2010 或 TFBuild 2012 伺服器連接至內部部署 Visual Studio Team Foundation Server 2013 應用程式層伺服器。

  • 您無法在 TFBuild 2012 或 TFBuild 2010 所在的電腦上安裝 Visual Studio Team Foundation Server 2013 TFBuild。

  • 如果您是在以 [Project Collection Administrators] 成員的身分登入期間安裝組建服務,這個安裝就會自動將組建服務帳戶加入至 [Project Collection Build Service Accounts] 群組,因此您不需要手動加入

  • 您可以將其組態複製到新的組建伺服器,取代現有的組建伺服器。 請參閱 設定 Team Foundation Build Service

  • 您可以在任何有足夠處理和儲存容量的用戶端或伺服器電腦上,設定臨機操作組建伺服器。 例如,如果個別開發人員擁有額外的電腦,則可以設定該電腦做為組建伺服器。

  • 您可以在實體電腦或虛擬機器上部署組建伺服器。

如需部署組建伺服器的逐步指示,請參閱設定 Team Foundation Build Service

開始設定組建伺服器

部署組建伺服器之後,您可以對其進行設定以符合小組的需求。

  1. 登入您要設定的組建伺服器。

  2. 從 Windows 的 [開始],執行 [Team Foundation 管理主控台]。

    [Team Foundation 管理主控台] 隨即出現。

  3. 在樹狀目錄窗格中,展開伺服器的名稱。

  4. 選擇 [組建組態] 節點。

    管理主控台:組建伺服器組態

    注意事項注意事項

    如果出現的是 [設定已安裝的功能設定已安裝的功能] 訊息,而不是組建控制器或組建代理程式 (如上所示),請參閱部署組建伺服器。

  5. 選擇 [內容]。

    組建伺服器組態

    [組建服務屬性] 對話方塊隨即出現。

    組建服務屬性對話方塊

    您必須先選擇 [停止服務] 連結,才能設定組建伺服器。 如需如何設定組建伺服器的詳細資訊,請參閱以下各節。

將組建伺服器連接到 Team 專案集合

在 [通訊] 下的 [提供專案集合的組建服務] 旁邊,選擇 [瀏覽] 按鈕將組建伺服器連接至內部部署 Team Foundation ServerVisual Studio Online 上的 Team 專案集合。

您可以搭配安全通訊端層 (SSL),使用超文字安全傳輸通訊協定 (HTTPS) 來強化安全性。 請參閱 針對 Team Foundation Server 以安全通訊端層 (SSL) 設定 HTTPS

指定服務帳戶

您可以在 [執行服務的身分] 下指定讓組建伺服器提供本身之服務的帳戶。

指定組建服務帳戶

緊接 [執行服務的身分] 下方,您可以指定組建服務帳戶。

NETWORK SERVICE 帳戶

對於大部分的用途來說,最佳的設定是 NT AUTHORITY\NETWORK SERVICE。

組建服務帳戶:NETWORK SERVICE 帳戶

這種方法的其中一個優點是,如果有人變更使用者帳戶的密碼 (某些網路系統管理員通常需要定期進行這類變更),組建伺服器並不會離線。

使用者帳戶

有時候,您可能需要指定使用者帳戶,例如 NORTHAMERICA\FABBUILD。

組建服務帳戶:使用者帳戶

您必須指定使用者帳戶的情況,其範例包括:

  • 您想要在互動模式下執行組建伺服器,如下所述。

  • 您的 Team Foundation Server 位於防火牆內,但是組建伺服器卻在防火牆之外。

不論您指定的帳戶為何,組建服務帳戶都必須屬於 Project Collection Build Service Accounts 群組

指定用來連接到 Team Foundation Server 的帳戶

您通常可以將第二個文字方塊保留空白。 不過,在下列情況中,您的組建伺服器無法使用組建服務帳戶連接至 Team Foundation Server。

網域信任差異:Team Foundation Server 的網域不信任組建伺服器的網域。 例如,組建伺服器位於 domainb,而 Team Foundation Server 位於不信任 domainb 的 domaina。 您可以在第一個方塊中指定組建服務帳戶,而在第二個方塊中指定 domaina 的帳戶:

組建服務帳戶和連接帳戶不同

Visual Studio Online 裝載的 Team 專案集合:當您將內部部署組建伺服器連接至 Visual Studio Online 時,[使用與 Windows 服務相同的識別] 核取方塊會自動清除,而且其下方會指定您用來連接至 Visual Studio Online 的帳戶 (例如 Windows Live 帳戶)。

在互動模式下執行組建伺服器

在大部分情況下,您應該以 Windows 服務的形式執行組建伺服器,這是預設設定。 不過,組建代理程式只能在做為互動式處理序執行的組建伺服器執行上執行某些工作 (例如執行自動程式碼 UI 測試在 Windows 市集應用程式執行測試)。

在互動模式下執行組建伺服器

  1. 識別將會當做組建服務帳戶的使用者帳戶。 組建服務帳戶必須:

  2. 在 [組建服務屬性] 對話方塊中,選擇 [停止服務]。

  3. 在 [執行服務的身分] 下,選擇 [變更],然後指定組建服務帳戶的認證。

  4. 選取 [以互動方式執行服務]。

    以互動模式執行組建服務

  5. 選擇 [啟動],然後選擇 [確定]。

  6. 讓組建服務帳戶登入組建伺服器。

後續步驟

  • 部署和設定組建控制器
    使用組建控制器執行輕量型工作,並將建置流程的處理器密集工作分配至其組建代理程式集區。 您可以在組建伺服器上裝載一個組建控制器。

  • 部署和設定組建代理程式
    使用組建代理程式執行組建的處理器密集工作,這些工作包括從版本控制取得檔案、提供工作區、編譯程式碼和執行測試。 您可以在組建伺服器上裝載一個或多個組建代理程式。

  • 設定置放資料夾
    您可以準備一個或多個置放資料夾,然後指定這些資料夾,使建置系統可以將二進位檔、測試結果和記錄檔提供給您的小組。

  • 向外延展 Team Foundation Build 系統
    隨著小組和程式碼庫的擴增,您可相對輕鬆地以累加方式擴充您的建置系統。

  • 管理建置系統
    部署組建伺服器之後,您可以從 Team Foundation 管理主控台對其進行管理。 您可以從 Team Foundation 管理主控台或 Visual Studio,管理組建控制器和組建代理程式。