2012-03-23 56 views
1

我有一個基於3個web應用程序的解決方案,這些應用程序部署到同一個azure虛擬機中。我的ServiceDefinition.csdef有3 <site>元素指向具有所需綁定的源目錄。每個Web角色的多個應用程序

因此,當我執行發佈時,所有3個應用程序都已部署,但只有第一個應用程序被預編譯,其他2個應用程序僅被xcopied到天藍色虛擬機。這是一個問題,因爲我的配置轉換沒有執行。

有沒有辦法執行Azure部署,發佈所有應用程序的預編譯版本 - 不只是第一個?

+1

duplicate:http://stackoverflow.com/questions/7487285/windows-azure-with-multiple-sites -in-one-role-not-transforming-2nd-web-debug-con – BentOnCoding 2012-03-23 18:52:51

回答

2

韋德Wegner寫了一篇關於這一段時間的博客文章。

Running Multiple Websites in a Windows Azure Web Role

請記住:在部署每個角色都必須呆在一起 - 你不能部署一個角色,一個服務和其他角色到另一個服務。如果你想這樣做:將你的角色分成不同的部署。然後,您可以將它們發佈到不同的網址。

我建議你爲每個Web應用程序創建一個實例。這樣可以降低部署更新所涉及的風險,方法是將產品部署分離。

編輯:(從Smarx被盜,Windows Azure with Multiple Sites in One Role not transforming 2nd web.debug.config to web.config

當您添加另一個Web角色,您提供physicalPath指向你想要部署什麼,所有的SDK確實是複製它發現的文件該路徑進入你的包。它不會構建。

您應該正在構建併發布要部署的Web應用程序,然後將physicalDirectory指向該發佈步驟的輸出。 (確保您在physicalDirectory中設置的目錄完全包含您想要部署到雲中的內容。)

+0

這正是我使用的解決方案。這就是問題所在:它部署所有其他網站文件。 – 2012-03-23 17:51:04

+0

太棒了!我使用了構建事件並更改了servicedefinition中的physycal路徑,並且它工作正常! – 2012-03-23 19:18:26

相關問題