Создание приложения Python в Службе приложений Azure в Linux (предварительная версия)Create a Python app in Azure App Service on Linux (Preview)

В этом кратком руководстве вы развернете простое приложение Python в Службе приложений на платформе Linux, которая предоставляет высокомасштабируемую веб-службу размещения с самостоятельной установкой исправлений.In this quickstart, you deploy a simple Python app to App Service on Linux, which provides a highly scalable, self-patching web hosting service. В руководстве используется интерфейс командной строки Azure (Azure CLI) в интерактивной браузерной оболочке Azure Cloud Shell. Поэтому все инструкции можно выполнять на компьютере Mac, Linux или Windows.You use the Azure command-line interface (the Azure CLI) through the interactive, browser-based Azure Cloud Shell, so you can follow the steps use a Mac, Linux, or Windows computer.

Пример приложения, выполняющегося в Azure

Предварительные требованияPrerequisites

Для работы с этим кратким руководством сделайте следующее:To complete this quickstart:

Скачать пример на локальный компьютерDownload the sample locally

В окне терминала выполните нижеприведенные команды, чтобы клонировать пример приложения на локальный компьютер и перейти в каталог, содержащий пример кода.In a terminal window, run the following commands to clone the sample application to your local machine, and navigate to the directory with the sample code.

git clone https://github.com/Azure-Samples/python-docs-hello-world
cd python-docs-hello-world

Репозиторий содержит файл application.py, который сообщает Службе приложений, что репозиторий содержит приложение Flask.The repository contains an application.py, which tells App Service that the repository contains a Flask app. Дополнительные сведения см. в статье Настройка приложений Python для Службы приложений Azure под управлением Linux.For more information, see Container startup process and customizations.

Локальный запуск приложенияRun the app locally

Запустите приложение локально, чтобы увидеть, как оно будет выглядеть после развертывания в Azure.Run the application locally so that you see how it should look when you deploy it to Azure. Откройте окно терминала и используйте нижеприведенные команды для установки необходимых зависимостей и запуска встроенного сервера разработки.Open a terminal window and use the commands below to install the required dependencies and launch the built-in development server.

# In Bash
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt
FLASK_APP=application.py flask run

# In PowerShell
py -3 -m venv env
env\scripts\activate
pip install -r requirements.txt
Set-Item Env:FLASK_APP ".\application.py"
flask run

Откройте веб-браузер и перейдите к примеру приложения по адресу http://localhost:5000/.Open a web browser, and navigate to the sample app at http://localhost:5000/.

На странице отобразится сообщение Hello World!You see the Hello World! из примера приложения.message from the sample app displayed in the page.

Пример приложения, выполняющегося локально

В окне терминала нажмите клавиши CTRL+C, чтобы выйти из веб-сервера.In your terminal window, press Ctrl+C to exit the web server.

Открытие Azure Cloud ShellOpen Azure Cloud Shell

Azure Cloud Shell — это бесплатная интерактивная оболочка, с помощью которой можно выполнять действия, описанные в этой статье.Azure Cloud Shell is a free, interactive shell that you can use to run the steps in this article. В Cloud Shell предварительно установлены и настроены общие инструменты Azure для использования с вашей учетной записью.Common Azure tools are preinstalled and configured in Cloud Shell for you to use with your account. Нажмите кнопку Копировать, чтобы скопировать код. Вставьте его в Cloud Shell и нажмите клавишу "ВВОД", чтобы выполнить код.Select Copy to copy the code, paste it in Cloud Shell, and then press Enter to run it. Cloud Shell можно открыть разными способами:There are a few ways to open Cloud Shell:

Нажмите кнопку Попробовать в правом верхнем углу блока с кодом.Select Try It in the upper-right corner of a code block. Открытие Azure Cloud Shell с помощью кнопки "Попробовать"
Откройте Cloud Shell в браузере.Open Cloud Shell in your browser. Запуск кнопки Azure Cloud ShellLaunch Azure Cloud Shell button
Нажмите кнопку меню Cloud Shell в правом верхнем углу окна портала Azure.Select the Cloud Shell button on the menu in the upper-right corner of the Azure portal. Кнопка "Cloud Shell" на портале Azure

Скачивание примера приложенияDownload the sample

В Cloud Shell создайте каталог quickstart и перейдите в него.In the Cloud Shell, create a quickstart directory and then change to it.

mkdir quickstart

cd quickstart

Затем выполните следующую команду, чтобы клонировать репозиторий с примером приложения в локальный каталог quickstart.Next, run the following command to clone the sample app repository to your quickstart directory.

git clone https://github.com/Azure-Samples/python-docs-hello-world

При выполнении эта команда выводит приблизительно следующие сведения:While running, it displays information similar to the following example:

Cloning into 'python-docs-hello-world'...
remote: Enumerating objects: 43, done.
remote: Total 43 (delta 0), reused 0 (delta 0), pack-reused 43
Unpacking objects: 100% (43/43), done.
Checking connectivity... done.

Создание веб-приложенияCreate a web app

Перейдите в каталог, в котором содержится пример кода, и выполните команду az webapp up.Change to the directory that contains the sample code and run the az webapp up command.

В следующем примере замените <app-name> уникальным именем приложения.In the following example, replace <app-name> with a unique app name.

cd python-docs-hello-world

az webapp up -n <app-name>

Выполнение этой команды может занять несколько минут.This command may take a few minutes to run. При выполнении эта команда выводит приблизительно следующие сведения:While running, it displays information similar to the following example:

The behavior of this command has been altered by the following extension: webapp
Creating Resource group 'appsvc_rg_Linux_CentralUS' ...
Resource group creation complete
Creating App service plan 'appsvc_asp_Linux_CentralUS' ...
App service plan creation complete
Creating app '<app-name>' ....
Webapp creation complete
Creating zip with contents of dir /home/username/quickstart/python-docs-hello-world ...
Preparing to deploy contents to app.
All done.
{
  "app_url": "https:/<app-name>.azurewebsites.net",
  "location": "Central US",
  "name": "<app-name>",
  "os": "Linux",
  "resourcegroup": "appsvc_rg_Linux_CentralUS ",
  "serverfarm": "appsvc_asp_Linux_CentralUS",
  "sku": "BASIC",
  "src_path": "/home/username/quickstart/python-docs-hello-world ",
  "version_detected": "-",
  "version_to_create": "python|3.7"
}

Примечание

Команда az webapp up выполняет следующие действия:The az webapp up command does the following actions:

Переход в приложениеBrowse to the app

Перейдите в развертываемое приложение с помощью веб-браузера.Browse to the deployed application using your web browser.

http://<app-name>.azurewebsites.net

Пример кода Python выполняется в Службе приложений в Linux со встроенным образом.The Python sample code is running in App Service on Linux with a built-in image.

Пример приложения, выполняющегося в Azure

Поздравляем!Congratulations! Вы развернули свое первое приложение Python в службе приложений в Linux.You've deployed your first Python app to App Service on Linux.

Обновление на локальном компьютере и повторное развертывание кодаUpdate locally and redeploy the code

В Cloud Shell введите code application.py, чтобы открыть текстовый редактор Cloud Shell.In the Cloud Shell, type code application.py to open the Cloud Shell editor.

Code application.py

Внесите небольшое изменение в текст вызова метода return:Make a small change to the text in the call to return:

return "Hello Azure!"

Сохраните изменения и выйдите из редактора.Save your changes and exit the editor. Выполните команду ^S, чтобы сохранить файл, и ^Q — чтобы выйти.Use the command ^S to save and ^Q to exit.

Повторно разверните приложение с помощью команды az webapp up.Redeploy the app using the az webapp up command. Замените <app-name> на имя приложения и укажите расположение вместо <location-name> (с помощью одного из значений в выходных данных команды az account list-locations).Substitute the name of your app for <app-name>, and specify a location for <location-name> (using one of the values shown from the az account list-locations command).

az webapp up -n <app-name> -l <location-name>

После завершения развертывания перейдите в окно браузера, открытое на шаге перехода в приложение, и обновите страницу.Once deployment has completed, switch back to the browser window that opened in the Browse to the app step, and refresh the page.

Обновленный пример приложения, выполняющегося в Azure

Управление новым приложением AzureManage your new Azure app

Перейдите на портал Azure, чтобы управлять созданным приложением.Go to the Azure portal to manage the app you created.

В меню слева щелкните Службы приложений, а затем — имя своего приложения Azure.From the left menu, click App Services, and then click the name of your Azure app.

Переход к приложению Azure на портале

Отобразится страница обзора вашего приложения.You see your app's Overview page. Вы можете выполнять базовые задачи управления: обзор, завершение, запуск, перезагрузку и удаление.Here, you can perform basic management tasks like browse, stop, start, restart, and delete.

Страница службы приложений на портале Azure

В меню слева доступно несколько страниц для настройки приложения.The left menu provides different pages for configuring your app.

Очистка ресурсовClean up resources

На предыдущем шаге вы создали ресурсы Azure в группе ресурсов.In the preceding steps, you created Azure resources in a resource group. Если эти ресурсы вам не понадобятся в будущем, вы можете удалить группу ресурсов, выполнив следующую команду в Cloud Shell:If you don't expect to need these resources in the future, delete the resource group by running the following command in the Cloud Shell:

az group delete --name myResourceGroup

Ее выполнение может занять до минуты.This command may take a minute to run.

Дополнительная информацияNext steps

Сейчас встроенный образ Python в Службе приложений на платформе Linux доступен в предварительной версии. Вы можете настроить команду для запуска приложения.The built-in Python image in App Service on Linux is currently in Preview, and you can customize the command used to start your app . Также приложения Python для рабочей среды можно создавать с помощью настраиваемого контейнера.You can also create production Python apps using a custom container instead.