Неделя Хэллоуина – популяция статей про веб-сайты в облаке Microsoft Azure удваивается.
Как многие знают, на Microsoft Azure есть очень простой сервис для размещения веб-сайтов на .NET, Java, PHP, Python, Node.js. Эту статью можно использовать в качестве шпаргалки для того, чтобы постоянно иметь под рукой перечень опций развертывания и ссылок на инструкции.
В шпаргалке: Visual Studio, Git, Mercurial, TFS, WebMatrix, MSBuild и WebDeploy.
Разворачиваем веб-сайт с помощью системы контроля версий, находящейся в облаке
Простым и хорошим способом развернуть веб-сайт является настройка системы контроля версий в облаке. Это снимает необходимость в установке и настройке ее локально.
Visual Studio Online (VSO)
Visual Studio Online (ранее Team Foundation Service) — облачный сервис в виде системы контроля версий и других возможностей для обеспечения коллаборации внутри команд. Сервис бесплатен для использования до 5 разработчиков. VSO полностью интегрирована с Azure Websites, и репозиторий может быть Git или TFVC.
Подробнее:
- Интеграция и развертывание с VSO и TFVC. Короткая инструкция про то, как настроить развертывание веб-сайта из VSO в Azure Websites с использованием TFVC. Подробная инструкция.
- Интеграция и развертывание с Visual Studio Online и Git. То же самое, что предыдущая инструкция, только вместо TFVC используется Git.
Git в облаке
В Azure есть набор функций для автоматизации развертывания веб-сайтов из репозиториев Git в Azure WebSites (GitHub, CodePlex и BitBucket).
Подробнее:
- Развертывание веб-сайта на Azure WebSites с помощью системы контроля версий . Инструкция: как развертывать с локального Git (в терминах Azure этот подход называется Local Git), GitHub, CodePlex и BitBucket.
- Развертывание веб-сайта с GitHub с использованием Kudu. Видео о том, как развернуть веб-сайт с GitHub на Azure WebSites.
- Форум поддержки Git, Mercurial и Dropbox.
Mercurial
В Azure есть поддержка Mercurial с репозиториями в CodePlex и BitBucket.
Подробнее:
- Развертывание веб-сайта на Azure WebSites с помощью системы контроля версий . Инструкция: как развертывать с локального Git (в терминах Azure этот подход называется Local Git), GitHub, CodePlex и BitBucket.
- Форум поддержки Git, Mercurial и Dropbox.
Dropbox
Dropbox - не система контроля версий, но хранить код можно, соответственно, и разворачивать его.
- Развертывание в Microsoft Azure из Dropbox. Инструкция: как использовать портал управления Azure для настройки развертывания из Dropbox.
- Dropbox и Azure Web Sites. Видео: как подключить папку Dropbox к Azure Websites, как создать веб-сайт и делать развертывание методом drag-n-drop.
- Форум поддержки Git, Mercurial и Dropbox.
Разворачиваем из IDE
Visual Studio и WebMatrix - средства разработки Microsoft, которые можно использовать для веб-разработки. У обоих средств есть встроенные функции для развертывания на Azure WebSites, оба могут использовать Web Deploy для автоматизации задач, например, развертывания базы данных, и оба умеют разворачивать по FTP или FTPS).
Visual Studio
Подробнее:
- Get started with Azure and ASP.NET: как создать и развернуть простой ASP.NET MVC проект с использованием Visual Studio и Web Deploy.
- How to Deploy Azure WebJobs to Azure Websites: как настроить консольное приложение и развернуть его в виде WebJobs.
- Deploy a Secure ASP.NET MVC 5 app with Membership, OAuth, and SQL Database to an Azure Web Site: как создать и развернуть ASP.NET MVC проект с SQL Database, с использованием Visual Studio, Web Deploy и Entity Framework Code First Migrations.
- Web Deployment Overview for Visual Studio and ASP.NET: основы развертывания веб-проектов с использованием Visual Studio — как разворачивать базу данных вместе с веб-приложением и др.
- ASP.NET Web Deployment using Visual Studio: серия из 12 статей про развертывание веб-проектов.
WebMatrix
Подробнее:
- Develop and deploy a web site with Microsoft WebMatrix: как создать простой веб-сайт ASP.NET из шаблона и развернуть на Azure WebSites.
- Build and deploy a Node.js web site to Azure using WebMatrix: то же самое, но веб-сайт на Node.js
- Create and deploy a PHP-MySQL Azure Web Site using WebMatrix: то же самое, но веб-сайт на PHP с MySQL.
- WebMatrix 3: Integrated Git and Deployment to Azure: интеграция WebMatrix с репозиторием Git.
Разворачиваем по FTP
Вы можете разворачивать веб-сайты на Azure WebSites по FTP — например, с помощью Internet Explorer или FileZilla. Azure Websites поддерживают FTPS. Однако развертывание по FTP не поддерживает дополнительные задачи, например, развертывание базы данных, и не поддерживает сравнение файлов на источнике и приемнике.
Подробнее:
- Create a PHP-MySQL Azure Web Site and Deploy Using FTP: как создать простой веб-сайт PHP+MySQL и развернуть на Azure WebSites по FTP.
- How to Manage Web Sites: настройка Web Sites, в том числе указание аккаунта FTP.
Разворачиваем с помощью системы контроля версий, находящейся локально
Если вы используете локальный TFS, Git или Mercurial, то из этих репозиториев также можно разворачивать веб-сайты на Azure WebSites.
Локальные Git или Mercurial
В Azure достаточно ввести URL репозитория Git или Mercurial для развертывания из них.
Подробнее:
- Развертывание веб-сайта на Azure WebSites с помощью системы контроля версий . Инструкция: как развертывать с локального Git (в терминах Azure этот подход называется Local Git), GitHub, CodePlex и BitBucket.
- Форум поддержки Git, Mercurial и Dropbox.
- Deploying TWO websites to Azure from one Git Repository: как разворачивать два веб-сайта из одного репозитория Git пера Scott Hanselman.
Разворачиваем с помощью утилит командной строки и Azure REST API Management API
Автоматизировать — это всегда хорошо, но, если это не получается сделать с системой контроля версий, всегда можно использовать утилиты командной строки. В Azure многие задачи управления упрощены, плюс в наличии имеется REST API для управления платформой и несколько фреймворков для работ с ним.
MSBuild
Если для разработки вы используете Visual Studio IDE, для автоматизации вы можете использовать MSBuild, настроив его на использование Web Deploy или FTP/FTPS. Web Deploy умеет автоматизировать задачи, например, развертывание баз данных.
Подробнее:
- ASP.NET Web Deployment using Visual Studio: Command Line Deployment: статья про развертывание в Azure из Visual Studio с использованием командной строки.
- Inside the Microsoft Build Engine: Using MSBuild and Team Foundation Build: книга про MSBuild и другие средства.
FTP-скрипты
Получить доступ к Azure WebSites по FTP/FTPS достаточно просто, и созданный аккаунт для доступа можно использовать для исполнения FTP-скриптов.
Подробнее:
Windows PowerShell
Выполнять развертывание MSBuild или FTP можно с помощью Windows PowerShell, используя большое количество командлетов, специализированных для работы с Azure REST API.
Подробнее:
- Building Real-World Cloud Apps with Azure — Automate Everything: подробное описание приложения, использующего Powershell для создания тестовой среды в Azure и дальнейшего ее развертывания.
.NET management API
Еще для MSBuild или FTP можно писать C#-код для доступа к REST API.
Подробнее:
- Automating everything with the Azure Management Libraries and .NET: введение в .NET management API
.
Кроссплатформенные утилиты командной строки (xpat-cli)
Утилиты командной строки для управления платформой и развертывания доступны также на Mac и Linux.
Подробнее:
- Command line tools. Страница на портале Azure.com, посвященная инструментам командной строки.
Web Deploy
Подробнее:
- Web Deployment Tool: официальная документация .
- Using Web Deploy: официальная документация на сайте IIS.NET.
- ASP.NET Web Deployment using Visual Studio: Command Line Deployment: развертывание с помощью инструментов командной строки.
Что дальше?
Развернули?
Почитайте про то, как тестировать Azure WebSites в продакшене.
Изучите, как работает и как делается резервирование ваших веб-сайтов.
Читайте остальную документацию.
Полезные ссылки
- Попробовать Azure бесплатно на 30 дней!
- Изучить курсы виртуальной академии Microsoft по облачным и другим технологиям
- Загрузить бесплатную или пробную Visual Studio
- Центр разработки Microsoft Azure (azurehub.ru) – сценарии, руководства, примеры, рекомендации по разработке
- Twitter.com/windowsazure_ru — последние новости Microsoft Azure
- Сообщество Microsoft Azure на Facebook – эксперты, вопросы
- Стать разработчиком универсальных приложений Windows
Автор: ahriman