Веб-приложения на базе Linux позволяют разработчикам запускать веб-приложения в контейнерах Docker для Linux. Это упрощает миграцию существующих приложений, размещенных и оптимизированных для платформы Linux, в Службу приложений Azure. Кроме того, разработчики могут развертывать приложения на различных языках программирования и платформах, используя уже знакомые инструменты Docker и Azure App Service.
Что нового в веб-приложении Azure для Linux?
Веб-приложение Azure для Linux предоставляет множество возможностей разработчикам, независимо от того, разрабатывают ли они приложения для Linux или просто хотят, чтобы их приложения были помещены в контейнер.Веб-приложение Azure для Linux доступно в регионах Западной Австралии, Западной Европы и Юго-Восточной Азии.
Некоторые из новых функций, добавленных в Службу приложений с поддержкой Linux:
- Слоты
- Автоматическое масштабирование
- Поддержка SSH
- Автоматическая публикация изображений из Docker Hub
Слоты
Слоты развертывания были одной из самых популярных функций Службы приложений Azure. Реализация службы приложений для Linux не была бы полной без поддержки слотов! Вы можете дублировать существующее приложение в «слот» и легко переключаться между тестовыми слотами и слотами рабочих веб-приложений.
Автоматическое масштабирование
Вы можете легко масштабировать приложения Службы приложений Linux и контейнеры по требованию или автоматически.Автоматическое масштабирование поддерживает триггеры ЦП, длины очереди диска и памяти.
Поддержка SSH
Вы можете использовать SSH для управления своим приложением.Введите адрес в браузере, чтобы узнать параметры SSH-соединения:
Если вы еще не прошли аутентификацию, вам нужно будет авторизоваться.https://<mysite>.
scm.azurewebsites.net/webssh/host .
После этого вы увидите что-то вроде этого:
ПРИМЕЧАНИЕ .
Чтобы включить SSH для пользовательских контейнеров Docker, вам необходимо дополнительно настроить SSH-сервер .
Автоматическая публикация изображений из Docker Hub
Ваше веб-приложение будет автоматически развернуто при публикации новой версии в Docker Hub. Чтобы включить эту функцию:- Настройте перехватчик в Docker Hub
https://<publishingusername>:<publishingpwd>@<sitename>.
- Создайте переменную для веб-приложения с именем ДОКЕР_ENABLE_CI и установите для него значение TRUE.
Другие функции
- Поддержка домена с подстановочными знаками .
Теперь вы можете назначать подстановочные имена своим веб-приложениям.
Например, *.
constoco.com.
- Тестирование в производстве (TiP) : эта функция позволяет направлять x% трафика на слот вашего приложения или на бета-сайт.
- Всегда включен : с помощью этой функции вы можете быть уверены, что ваше веб-приложение всегда работает, и избежать холодного запуска из-за тайм-аутов простоя.
- Перезапуск сайта : с помощью этой опции вы можете перезагрузить контейнер и веб-приложение.
Эта опция заставит контейнер перезагрузиться из кэшированного образа.
Создайте и разверните проект .
NET Core. Запустите терминал, создайте каталог hellodotnetcore и перейдите в него.
Затем введите: dotnet new web
Эта команда создает три файла (hellodotnetcore.csproj, Program.cs и Startup.cs) и один пустой каталог (wwwroot/) в текущем каталоге.
Содержимое файла .
csproj должно выглядеть следующим образом: <!-- Empty lines are omitted. -->
<Project Sdk="Microsoft.NET.Sdk.Web">
<PropertyGroup>
<TargetFramework>netcoreapp1.1</TargetFramework>
</PropertyGroup>
<ItemGroup>
<Folder Include="wwwroot\" />
</ItemGroup>
<ItemGroup>
<PackageReference Include="Microsoft.AspNetCore" Version="1.1.2" />
</ItemGroup>
</Project>
Поскольку это веб-приложение, ссылка на пакет ASP.NET Core будет автоматически добавлена в файл hellodotnetcore.csproj. Номер версии пакета задается в соответствии с установленным SDK. Этот пример применим к ASP.NET Core версии 1.1.2, поскольку он использует .
NET Core 1.1. Вы можете создать и запустить приложение .
NET Core с помощью двух команд:
dotnet restore
dotnet run
При запуске приложения вы увидите сообщение о том, что оно прослушивает входящие запросы:
Hosting environment: Production
Content root path: C:\hellodotnetcore
Now listening on: http://localhost:5000
Application started. Press Ctrl+C to shut down.
Проверьте корректность работы приложения, открыв его в браузере.
локальный хост :5000/ Если все пойдет хорошо, вы увидите сообщение «Hello World!» сообщение.
Публикация приложения .
NET Core в Azure Первое, что вам нужно сделать, это создать новое веб-приложение.
Войдите на портал Azure и создайте веб-приложение для Linux.
Далее укажите параметры для создания нового приложения:
Параметр | Значение | Описание |
---|---|---|
Имя приложения | hellodotnetcore | Название вашего приложения.
Это имя должно быть уникальным.
|
Подписка | Выберите существующую подписку | Подписка Azure. |
Ресурсная группа | мояресурсгруппа | Группа ресурсов Azure, содержащая веб-приложение.
|
План обслуживания приложений | Название существующего плана службы приложений | План службы приложений.
|
Настроить контейнер | .
NET Core 1.1 |
Тип контейнера для этого веб-приложения: встроенный, Docker или частный реестр.
|
Источник изображения | Встроенный | Источник изображения.
|
Стек времени выполнения | .
NET Core 1.1 |
Стек и версия среды выполнения.
|
https://{your web app name}.
Запустите команды для развертывания приложения в Azure:
git init
git remote add azure <Git deployment URL from above>
git add *.
csproj *.
cs
git commit -m "Initial deployment commit"
git push azure master
Вам не нужно отдельно добавлять в репозиторий файлы в каталогах bin/ или obj/, поскольку веб-приложение будет автоматически собрано в облаке.
Результат должен выглядеть примерно так:
/* some output has been removed for brevity */
remote: Copying file: 'System.Net.Websockets.dll'
remote: Copying file: 'System.Runtime.CompilerServices.Unsafe.dll'
remote: Copying file: 'System.Runtime.Serialization.Primitives.dll'
remote: Copying file: 'System.Text.Encodings.Web.dll'
remote: Copying file: 'hellodotnetcore.deps.json'
remote: Copying file: 'hellodotnetcore.dll'
remote: Omitting next output lines.
remote: Finished successfully.
remote: Running post deployment commands.
remote: Deployment successful.
To https://hellodotnetcore.scm.azurewebsites.net/
* [new branch] master -> master
После завершения развертывания перезапустите веб-приложение.
Для этого перейдите на портал Azure, откройте страницу «Обзор» вашего веб-приложения и нажмите кнопку «Перезапустить».
После перезапуска откройте страницу веб-приложения.
Это должно выглядеть примерно так:
Источники
- Узнайте, что нового в веб-приложении Службы приложений Azure для Linux (предварительная версия)
- Используйте .
NET Core в веб-приложении Azure в Linux.
- Пример создания приложения на .
NET Core
NET Framework #.
net core #.
NET #C++ #Microsoft Azure
-
Вы Работаете По Выходным? Результаты Опроса
19 Oct, 24 -
Карты Google 4.1
19 Oct, 24 -
Прямая Трансляция Teched Russia 2011
19 Oct, 24 -
Подготовка К Запуску Проекта
19 Oct, 24 -
Нетбук – Самый Популярный Новогодний Подарок
19 Oct, 24 -
Asp.net Mvc: Мои Правила Для Представлений
19 Oct, 24 -
Ваше Javafx-Приложение В Вконтакте
19 Oct, 24