- PVSM.RU - https://www.pvsm.ru -

Как разворачивать веб-сайты в Microsoft Azure?

Неделя Хэллоуина – популяция статей про веб-сайты в облаке Microsoft Azure удваивается.

Как многие знают, на Microsoft Azure есть очень простой сервис для размещения веб-сайтов на .NET, Java, PHP, Python, Node.js. Эту статью можно использовать в качестве шпаргалки для того, чтобы постоянно иметь под рукой перечень опций развертывания и ссылок на инструкции.
В шпаргалке: Visual Studio, Git, Mercurial, TFS, WebMatrix, MSBuild и WebDeploy.

Как разворачивать веб сайты в Microsoft Azure?

 

Разворачиваем веб-сайт с помощью системы контроля версий, находящейся в облаке

 

Простым и хорошим способом развернуть веб-сайт является настройка системы контроля версий в облаке [1]. Это снимает необходимость в установке и настройке ее локально.

Visual Studio Online (VSO)


Visual Studio Online [2] (ранее Team Foundation Service) — облачный сервис в виде системы контроля версий и других возможностей для обеспечения коллаборации внутри команд. Сервис бесплатен для использования до 5 разработчиков. VSO полностью интегрирована с Azure Websites, и репозиторий может быть Git или TFVC [2].

Подробнее:

 

Git в облаке


В Azure есть набор функций для автоматизации развертывания веб-сайтов из репозиториев Git в Azure WebSites (GitHub [5]CodePlex [6] и BitBucket [7]).

Подробнее:

 

Mercurial


В Azure есть поддержка Mercurial [11] с репозиториями в CodePlex [6] и BitBucket [7].

Подробнее:

 

Dropbox


Dropbox [12] - не система контроля версий, но хранить код можно, соответственно, и разворачивать его.

 

Разворачиваем из IDE


Visual Studio [15] и WebMatrix [16] - средства разработки Microsoft, которые можно использовать для веб-разработки. У обоих средств есть встроенные функции для развертывания на Azure WebSites, оба могут использовать Web Deploy [17] для автоматизации задач, например, развертывания базы данных, и оба умеют разворачивать по FTP или FTPS [18]).

Visual Studio


Подробнее:

 

WebMatrix


Подробнее:

 

Разворачиваем по FTP


Вы можете разворачивать веб-сайты на Azure WebSites по FTP — например, с помощью Internet Explorer или FileZilla [28]. Azure Websites поддерживают FTPS. Однако развертывание по FTP не поддерживает дополнительные задачи, например, развертывание базы данных, и не поддерживает сравнение файлов на источнике и приемнике.

Подробнее:

 

Разворачиваем с помощью системы контроля версий, находящейся локально


Если вы используете локальный TFS, Git или Mercurial, то из этих репозиториев также можно разворачивать веб-сайты на Azure WebSites.

Локальные Git или Mercurial


В Azure достаточно ввести URL репозитория Git или Mercurial для развертывания из них.

Подробнее:

 

Разворачиваем с помощью утилит командной строки и Azure REST API Management API


Автоматизировать — это всегда хорошо, но, если это не получается сделать с системой контроля версий, всегда можно использовать утилиты командной строки. В Azure многие задачи управления упрощены, плюс в наличии имеется REST API для управления платформой и несколько фреймворков для работ с ним.

MSBuild


Если для разработки вы используете Visual Studio IDE [32], для автоматизации вы можете использовать MSBuild [33], настроив его на использование Web Deploy [32] или FTP/FTPS [32]. Web Deploy умеет автоматизировать задачи, например, развертывание баз данных.

Подробнее:

 

FTP-скрипты


Получить доступ к Azure WebSites по FTP/FTPS [18] достаточно просто, и созданный аккаунт для доступа можно использовать для исполнения FTP-скриптов.

Подробнее:

 

Windows PowerShell


Выполнять развертывание MSBuild или FTP можно с помощью Windows PowerShell [36], используя большое количество командлетов, специализированных для работы с Azure REST API.

Подробнее:

 

.NET management API


Еще для MSBuild или FTP можно писать C#-код для доступа к REST API.

Подробнее:

.

Кроссплатформенные утилиты командной строки (xpat-cli)


Утилиты командной строки для управления платформой и развертывания доступны также на Mac и Linux.

Подробнее:

  • Command line tools [39]. Страница на портале Azure.com, посвященная инструментам командной строки.

 

Web Deploy


Подробнее:

 

Что дальше?


Развернули?
Почитайте про то, как тестировать Azure WebSites в продакшене [42].
Изучите, как работает [43] и как делается резервирование ваших веб-сайтов.
Читайте остальную документацию [44].

Полезные ссылки

Автор: ahriman

Источник [52]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/git/73253

Ссылки в тексте:

[1] настройка системы контроля версий в облаке: http://asp.net/aspnet/overview/developing-apps-with-windows-azure/building-real-world-cloud-apps-with-windows-azure/source-control

[2] Visual Studio Online: http://www.asp.net/aspnet/overview/developing-apps-with-windows-azure/building-real-world-cloud-apps-with-windows-azure/source-control

[3] Интеграция и развертывание с VSO и TFVC: http://www.visualstudio.com/en-us/learn/continuous-delivery-in-vs

[4] Интеграция и развертывание с Visual Studio Online и Git: http://azure.microsoft.com/en-us/documentation/articles/cloud-services-continuous-delivery-use-vso-git/

[5] GitHub: http://www.github.com/

[6] CodePlex: http://www.codeplex.com/

[7] BitBucket: https://bitbucket.org/

[8] Развертывание веб-сайта на Azure WebSites с помощью системы контроля версий : https://github.com/Azure/azure-content/blob/master/en-us/documentation/articles/web-sites-publish-source-control

[9] Развертывание веб-сайта с GitHub с использованием Kudu: https://github.com/Azure/azure-content/blob/master/en-us/documentation/videos/deploying-to-azure-from-github

[10] Форум поддержки Git, Mercurial и Dropbox: http://social.msdn.microsoft.com/Forums/windowsazure/en-US/home?forum=azuregit

[11] Mercurial: http://mercurial.selenic.com/

[12] Dropbox: https://www.dropbox.com/

[13] Развертывание в Microsoft Azure из Dropbox: http://blogs.msdn.com/b/windowsazure/archive/2013/03/19/new-deploy-to-windows-azure-web-sites-from-dropbox.aspx

[14] Dropbox и Azure Web Sites: http://channel9.msdn.com/Series/Windows-Azure-Web-Sites-Tutorials/Dropbox-Deployment-to-Windows-Azure-Web-Sites

[15] Visual Studio: http://www.visualstudio.com/en-us/downloads/download-visual-studio-vs.aspx

[16] WebMatrix: http://www.microsoft.com/web/webmatrix/

[17] Web Deploy: http://www.iis.net/downloads/microsoft/web-deploy

[18] FTP или FTPS: http://en.wikipedia.org/wiki/File_Transfer_Protocol

[19] Get started with Azure and ASP.NET: https://github.com/Azure/azure-content/blob/master/en-us/develop/net/tutorials/get-started

[20] How to Deploy Azure WebJobs to Azure Websites: https://github.com/Azure/azure-content/blob/master/en-us/documentation/articles/websites-dotnet-deploy-webjobs

[21] Deploy a Secure ASP.NET MVC 5 app with Membership, OAuth, and SQL Database to an Azure Web Site: https://github.com/Azure/azure-content/blob/master/en-us/develop/net/tutorials/web-site-with-sql-database

[22] Web Deployment Overview for Visual Studio and ASP.NET: http://msdn.microsoft.com/en-us/library/dd394698.aspx

[23] ASP.NET Web Deployment using Visual Studio: http://www.asp.net/mvc/tutorials/deployment/visual-studio-web-deployment/introduction

[24] Develop and deploy a web site with Microsoft WebMatrix: http://www.windowsazure.com/en-us/documentation/articles/web-sites-dotnet-using-webmatrix/

[25] Build and deploy a Node.js web site to Azure using WebMatrix: http://www.windowsazure.com/en-us/documentation/articles/web-sites-nodejs-use-webmatrix/

[26] Create and deploy a PHP-MySQL Azure Web Site using WebMatrix: http://www.windowsazure.com/en-us/documentation/articles/web-sites-php-mysql-use-webmatrix/

[27] WebMatrix 3: Integrated Git and Deployment to Azure: http://www.codeproject.com/Articles/577581/Webmatrixplus3-3aplusIntegratedplusGitplusandplusD

[28] FileZilla: https://filezilla-project.org/

[29] Create a PHP-MySQL Azure Web Site and Deploy Using FTP: https://github.com/Azure/azure-content/blob/master/en-us/documentation/articles/web-sites-php-mysql-deploy-use-ftp

[30] How to Manage Web Sites: http://www.windowsazure.com/en-us/documentation/articles/web-sites-manage

[31] Deploying TWO websites to Azure from one Git Repository: http://www.hanselman.com/blog/DeployingTWOWebsitesToWindowsAzureFromOneGitRepository.aspx

[32] Visual Studio IDE: https://github.com/Azure/azure-content/blob/master/articles/web-sites-deploy.md

[33] MSBuild: http://msbuildbook.com/

[34] ASP.NET Web Deployment using Visual Studio: Command Line Deployment: http://www.asp.net/mvc/tutorials/deployment/visual-studio-web-deployment/command-line-deployment

[35] Using FTP Batch Scripts: http://support.microsoft.com/kb/96269

[36] Windows PowerShell: http://msdn.microsoft.com/en-us/library/dd835506.aspx

[37] Building Real-World Cloud Apps with Azure — Automate Everything: http://asp.net/aspnet/overview/developing-apps-with-windows-azure/building-real-world-cloud-apps-with-windows-azure/automate-everything

[38] Automating everything with the Azure Management Libraries and .NET: http://www.hanselman.com/blog/PennyPinchingInTheCloudAutomatingEverythingWithTheWindowsAzureManagementLibrariesAndNET.aspx

[39] Command line tools: https://github.com/Azure/azure-content/blob/master/en-us/downloads/

[40] Web Deployment Tool: http://technet.microsoft.com/en-us/library/dd568996

[41] Using Web Deploy: http://www.iis.net/learn/publish/using-web-deploy

[42] продакшене: http://habrahabr.ru/post/240657/

[43] как работает: https://github.com/Azure/azure-content/blob/master/en-us/documentation/articles/web-sites-backup

[44] остальную документацию: https://github.com/Azure/azure-content/blob/master/en-us/documentation/services/web-sites

[45] Попробовать Azure: http://l.techdays.ru/go/azuretrial

[46] Изучить курсы: http://l.techdays.ru/go/mva

[47] Загрузить: http://l.techdays.ru/go/getvs

[48] Центр разработки Microsoft Azure (azurehub.ru): http://www.azurehub.ru/

[49] Twitter.com/windowsazure_ru: http://www.twitter.com/windowsazure_ru

[50] Сообщество Microsoft Azure на Facebook: http://www.facebook.com/groups/azurerus/

[51] Стать разработчиком: http://l.techdays.ru/go/winstart

[52] Источник: http://habrahabr.ru/post/242075/