2016-06-30 145 views
3

我有一個現有網站,我想部署在Azure,使用Visual Studio團隊服務。該網站由靜態文件組成,沒有ASP.NET或其他任何涉及的內容。如何從Visual Studio團隊服務部署靜態網站到Azure

在Visual Studio Team Services中,我創建了一個構建,它執行npm installgulp構建。這會導致包含網站的所有文件的dist文件夾。在Azure中,所有設置都正確(訂閱,網絡應用,...)。

但是,我不確定如何將我的代碼推送到Azure。瀏覽VSTS的Release選項卡中的選項,似乎總是需要一個'artifact',但我只是有一堆文件。我需要發佈dist文件夾中的文件並確保index.html已投放。

我該怎麼做?

這個問題與this有關,但是,答案都從Azure開始,並沒有提到如何使用Visual Studio Team Services部署現有代碼。

回答

4

訣竅是自己創建工件,它可以像包含靜態網站文件的zip文件一樣簡單。該zip文件應該作爲工件複製到$(build.artifactstagingdirectory)目標目錄中。接下來,您可以使用簡單的Web應用程序部署任務將該zip文件發佈到Azure。如果index.html位於根目錄中,則Azure足夠智能以便爲其提供服務。

下面是一個工作構建和部署流程。假定gulp用於構建網站並將構建輸出(即靜態文件)寫入dist文件夾。

enter image description here

1

最簡單的方法是從源代碼管理中進行部署,如果您在Azure門戶網站的「設置」下查看,您可能會看到"Continuous deployment"

從那裏,你可以從Visual Studio團隊服務,Github上部署等

每次簽入將被部署,也是錯誤的,所以你可能想引入一個分級環境作爲deployment slot爲好,當您感覺您的網站已準備好生產時,您可以在這裏與生產交換分段。

+0

那麼這肯定是一個選項創建服務端點後FTP部署,但我想用VSTS控制發行版,而不是從Azure設置CD。我的確有一個測試,測試和生產環境,我想'推動'從一個部署版本發佈到下一個版本。 – fikkatra

+0

如果您想從Visual Studio Online完成所有工作,您必須查看發佈管理,網址爲:https://www.visualstudio.com/en-us/features/release-management-vs.aspx – Lostfields

+0

如果您只想使用VSO對於源代碼控制和工作任務,您可以查看https://www.appveyor。com /將自動化你的構建和部署 – Lostfields

1

沒有必要創建一個神器,另一種解決方案可以在VSTS

enter image description here

enter image description here

相關問題