* 適用環境: Visual Studio 2010, Windows Azure SDK 1.4.1 Refresh (建議經由 Web Platform Installer 3.0 安裝, 不必記 URL)
Windows Azure 雖然有提供開發測試環境 (DevFabric), 但由於它是裝在開發者的機器上, 通常僅能用來作為開發期間的單元測試之用, 遇到多人開發時的整合測試, 還是得回到 Windows Azure 上開一個測試的 Hosted Service, 將程式佈署到 Windows Azure 上以進行測試。但是 Windows Azure 的佈署流程總是會需要重新啟進一個全新的虛擬機器 , 以至於每回的上傳總是要佔去不少時間。大約要半柱香的時間, 有總時光倒流回 20 年前在大型主機上寫程式的錯覺。
今年的 MIX 2011, Windows Azure SDK 微幅更新到 1.4.1 Refresh (目前官網上的部份連結仍然是舊的, 建議安裝 Web Platform Installer 3.0 之後, 再搜尋 Azure 關鍵字即可找到最新的版本), 主要是增加 Web Deploy 的功能。Web Deploy 是Visual Studio 內建的功能, 主要工作是將 Web Application 整個打包後發佈到 IIS 上, 以取代 FTP 等舊式各別檔案的上傳。
Web Deploy 與 Windows Azure 的打包機制最大的不同, 是 Web Deploy 只能針對 WebRole 打包, 並且是直接上傳到正在運行中 VM 的 IIS 上, 可以藉此加速修改 Azure 網頁程式上傳後重新啟動的時間, 但也有一些限制:
不同的佈署步驟:
1. 安裝 Windows Azure SDK 1.4.1 Refresh 及 Windows Azure Tools for Microsoft Visual Studio 2010 Platform v1.4 之後, 部署網站時會多一個 Enable Web Deploy 的選項, 開啟這個選項之前, 必須先設定 Remote Desktop 所需的主機管理員帳號憑證, 沒有設定 Remote Desktop 主機管理員帳號憑證之前, 這個選項是變灰而不能選的。
2. 第二次之後就可以直接使用 Web Deploy 來部署, 要注意這裡使用的是 WebRole 的 Publish (Web Project 按右鍵), 而不是平常的 Windows Azure Project Publish (Azure Project 按右鍵)