Руководство по развертыванию веб-приложения Django с PostgreSQL в Службе приложений AzureTutorial: Deploy a Django web app with PostgreSQL in Azure App Service

В этом учебнике показано, как развернуть веб-приложение Python Django на основе данных в Службе приложений Azure и подключить его к Базе данных Azure для Postgres.This tutorial shows how to deploy a data-driven Python Django web app to Azure App Service and connect it to an Azure Database for Postgres database. Служба приложений — служба веб-размещения с автоматической установкой исправлений и высоким уровнем масштабируемости.App Service provides a highly scalable, self-patching web hosting service.

В этом учебнике используется Azure CLI для выполнения следующих задач:In this tutorial, you use the Azure CLI to complete the following tasks:

  • настройка начальной среды с помощью Python и Azure CLI;Set up your initial environment with Python and the Azure CLI
  • создание базы данных в службе Базы данных Azure для PostgreSQL;Create an Azure Database for PostgreSQL database
  • развертывание кода в Службе приложений Azure и подключение к PostgreSQL;Deploy code to Azure App Service and connect to PostgreSQL
  • обновление кода и повторное развертывание;Update your code and redeploy
  • просмотр журналов диагностики;View diagnostic logs
  • управление веб-приложением на портале Azure.Manage the web app in the Azure portal

Вы также можете воспользоваться версией этого руководства для портала Azure.You can also use the Azure portal version of this tutorial.

Настройка начальной средыSet up your initial environment

  1. Подготовьте учетную запись Azure с активной подпиской.Have an Azure account with an active subscription. Создайте учетную запись бесплатно.Create an account for free.
  2. Установите Python 3.6 или более поздней версии.Install Python 3.6 or higher.
  3. Установите Azure CLI версии 2.0.80 или более поздней для выполнения команд в любой оболочке для подготовки и настройки ресурсов Azure.Install the Azure CLI 2.0.80 or higher, with which you run commands in any shell to provision and configure Azure resources.

Откройте окно терминала и проверьте, что используется Python 3.6 или более поздней версии:Open a terminal window and check your Python version is 3.6 or higher:

python3 --version

Убедитесь, что у вас есть Azure CLI версии 2.0.80 или выше.Check that your Azure CLI version is 2.0.80 or higher:

az --version

Теперь войдите в Azure с помощью CLI.Then sign in to Azure through the CLI:

az login

Эта команда открывает окно браузера для ввода учетных данных.This command opens a browser to gather your credentials. После выполнения команда отображает выходные данные JSON с информацией о подписках.When the command finishes, it shows JSON output containing information about your subscriptions.

Войдя, вы сможете выполнять в Azure CLI команды Azure для работы с ресурсами в подписке.Once signed in, you can run Azure commands with the Azure CLI to work with resources in your subscription.

Возникли проблемы? Сообщите нам!Having issues? Let us know.

Клонирование или скачивание примера приложенияClone or download the sample app

Клонируйте репозиторий примера.Clone the sample repository:

git clone https://github.com/Azure-Samples/djangoapp

Затем перейдите в эту папку:Then navigate into that folder:

cd djangoapp

Пример djangoapp содержит управляемое данными приложение Django для опросов, которое вы можете получить, выполнив инструкции по созданию первого приложения из документации по Django.The djangoapp sample contains the data-driven Django polls app you get by following Writing your first Django app in the Django documentation. Готовое приложение предоставляется здесь для удобства.The completed app is provided here for your convenience.

Пример также изменяется для использования в рабочей среде, такой как Служба приложений.The sample is also modified to run in a production environment like App Service:

  • Параметры рабочей среды находятся в файле azuresite/production.py.Production settings are in the azuresite/production.py file. Сведения о разработке хранятся в файле azuresite/settings.py.Development details are in azuresite/settings.py.
  • Приложение использует параметры для работы в производственной среде, если для переменной среды DJANGO_ENV задано значение production.The app uses production settings when the DJANGO_ENV environment variable is set to "production". В учебнике эта переменная среды создается позже вместе с другими переменными, используемыми для настройки базы данных PostgreSQL.You create this environment variable later in the tutorial along with others used for the PostgreSQL database configuration.

Эти изменения связаны с настройкой Django для запуска в любой рабочей среде и не относятся к Службе приложений.These changes are specific to configuring Django to run in any production environment and aren't particular to App Service. Дополнительные сведения см. в контрольном списке развертывания Django.For more information, see the Django deployment checklist.

Возникли проблемы? Сообщите нам!Having issues? Let us know.

Создание базы данных Postgres в AzureCreate Postgres database in Azure

Установите расширение db-up для Azure CLI, выполнив следующую команду:Install the db-up extension for the Azure CLI:

az extension add --name db-up

Если команда az не распознана, убедитесь, что установлен Azure CLI, как описано в разделе Настройка начальной среды.If the az command is not recognized, be sure you have the Azure CLI installed as described in Set up your initial environment.

Затем создайте базу данных Postgres в Azure с помощью команды az postgres up:Then create the Postgres database in Azure with the az postgres up command:

az postgres up --resource-group DjangoPostgres-tutorial-rg --location westus2 --sku-name B_Gen5_1 --server-name <postgre-server-name> --database-name pollsdb --admin-user <admin-username> --admin-password <admin-password> --ssl-enforcement Enabled
  • Замените <postgres-server-name> уникальным именем в Azure (конечная точка сервера — https://<postgres-server-name>.postgres.database.azure.com).Replace <postgres-server-name> with a name that's unique across all Azure (the server endpoint is https://<postgres-server-name>.postgres.database.azure.com). В качестве хорошего шаблона можно будет использовать сочетание названия компании и другого уникального значения.A good pattern is to use a combination of your company name and another unique value.
  • Для значений <admin-username> и <admin-password> укажите учетные данные, чтобы создать пользователя с правами администратора для сервера Postgres.For <admin-username> and <admin-password>, specify credentials to create an administrator user for this Postgres server.
  • Ценовая категория B_Gen5_1 (Базовый, 5-е поколение, 1 ядро), используемая здесь, является самой дешевой.The B_Gen5_1 (Basic, Gen5, 1 core) pricing tier used here is the least expensive. Для баз данных рабочей среды не указывайте аргумент --sku-name, чтобы вместо этого использовать уровень GP_Gen5_2 (общего назначения, 5-е поколение, 2 ядра).For production databases, omit the --sku-name argument to use the GP_Gen5_2 (General Purpose, Gen 5, 2 cores) tier instead.

С помощью этой команды выполняются следующие действия (может занять несколько минут):This command performs the following actions, which may take a few minutes:

  • Создается группа ресурсов с именем DjangoPostgres-tutorial-rg, если она еще не существует.Create a resource group called DjangoPostgres-tutorial-rg, if it doesn't already exist.
  • Создается сервер Postgres.Create a Postgres server.
  • Создается учетная запись администратора по умолчанию с уникальным именем пользователя и паролем.Create a default administrator account with a unique user name and password. (Чтобы указать собственные учетные данные, используйте с командой az postgres up аргументы --admin-user и --admin-password.)(To specify your own credentials, use the --admin-user and --admin-password arguments with the az postgres up command.)
  • Создается база данных pollsdb.Create a pollsdb database.
  • Разрешается доступ с локального IP-адреса.Enable access from your local IP address.
  • Разрешается доступ из служб Azure.Enable access from Azure services.
  • Создается пользователь базы данных с доступом к базе данных pollsdb.Create a database user with access to the pollsdb database.

Все эти шаги можно выполнять отдельно с помощью других команд az postgres и psql, но az postgres up выполняет все эти действия сразу.You can do all the steps separately with other az postgres and psql commands, but az postgres up does all the steps together.

После выполнения команды выводится объект JSON, который содержит различные строки подключения для базы данных вместе с URL-адресом сервера, созданным именем пользователя (например, joyfulKoala@msdocs-djangodb-12345) и паролем GUID.When the command completes, it outputs a JSON object that contains different connection strings for the database along with the server URL, a generated user name (such as "joyfulKoala@msdocs-djangodb-12345"), and a GUID password. Скопируйте имя пользователя и пароль во временный текстовый файл, так как они еще понадобятся в этом учебнике.Copy the user name and password to a temporary text file as you need them later in this tutorial.

Совет

Для параметра -l <location-name> можно указать любой из регионов Azure.-l <location-name>, can be set to any one of the Azure regions. Список регионов, доступных для вашей подписки, можно получить с помощью команды az account list-locations.You can get the regions available to your subscription with the az account list-locations command. Для рабочих приложений разместите базу данных и приложение в одном месте.For production apps, put your database and your app in the same location.

Возникли проблемы? Сообщите нам!Having issues? Let us know.

Развертывание кода в Службе приложений AzureDeploy the code to Azure App Service

В этом разделе вы создадите узел приложения в приложении Службы приложений, подключите это приложение к базе данных Postgres, а затем развернете код на этом узле.In this section, you create app host in App Service app, connect this app to the Postgres database, then deploy your code to that host.

Создание приложения Службы приложенийCreate the App Service app

В терминале убедитесь, что вы находитесь в папке репозитория djangoapp, в котором содержится код приложения.In the terminal, make sure you're in the djangoapp repository folder that contains the app code.

Создайте приложение Службы приложений (хост-процесс) с помощью команды az webapp up:Create an App Service app (the host process) with the az webapp up command:

az webapp up --resource-group DjangoPostgres-tutorial-rg --location westus2 --plan DjangoPostgres-tutorial-plan --sku B1 --name <app-name>
  • Для аргумента --location используйте то же расположение, что и для базы данных в предыдущем разделе.For the --location argument, use the same location as you did for the database in the previous section.
  • Замените <app-name> уникальным именем в Azure (конечная точка сервера — https://<app-name>.azurewebsites.net).Replace <app-name> with a unique name across all Azure (the server endpoint is https://<app-name>.azurewebsites.net). Для <app-name> допускаются символы A-Z, 0-9 и -.Allowed characters for <app-name> are A-Z, 0-9, and -. Рекомендуется использовать сочетание названия компании и идентификатора приложения.A good pattern is to use a combination of your company name and an app identifier.

С помощью этой команды выполняются следующие действия (может занять несколько минут):This command performs the following actions, which may take a few minutes:

  • Создается группа ресурсов, если она еще не существует.Create the resource group if it doesn't already exist. (В этой команде используется та же группа ресурсов, в которой ранее была создана база данных.)(In this command you use the same resource group in which you created the database earlier.)
  • Создается план службы приложений DjangoPostgres-tutorial-plan ценовой категории "Базовый" (B1), если он еще не существует.Create the App Service plan DjangoPostgres-tutorial-plan in the Basic pricing tier (B1), if it doesn't exist. Параметры --plan и --sku являются необязательными.--plan and --sku are optional.
  • Создается приложение Службы приложений, если оно еще не существует.Create the App Service app if it doesn't exist.
  • Для приложения включается ведение журнала по умолчанию, если оно еще не включено.Enable default logging for the app, if not already enabled.
  • Передается репозиторий через развертывание на основе ZIP-файла с включенной автоматизацией сборки.Upload the repository using ZIP deployment with build automation enabled.
  • Кэшируются общие параметры, такие как имя группы ресурсов и план службы приложений, в файл .azure/config. Поэтому не нужно указывать все эти параметры с помощью последующих команд.Cache common parameters, such as the name of the resource group and App Service plan, into the file .azure/config. As a result, you don't need to specify all the same parameter with later commands. Например, чтобы повторно развернуть приложение после внесения изменений, можно просто еще раз запустить az webapp up без параметров.For example, to redeploy the app after making changes, you can just run az webapp up again without any parameters. Команды, поступающие из расширений CLI, например az postgres up, не используют кэш, поэтому необходимо указать здесь группу ресурсов и расположение при первом использовании команды az webapp up.Commands that come from CLI extensions, such as az postgres up, however, do not at present use the cache, which is why you needed to specify the resource group and location here with the initial use of az webapp up.

После успешного развертывания команда создает выходные данные JSON, как показано в следующем примере:Upon successful deployment, the command generates JSON output like the following example:

Пример выходных данных команды az webapp up

Возникли проблемы? Сообщите нам!Having issues? Let us know.

Примечание

При попытке посетить URL-адрес приложения на этом этапе возникнет ошибка DisallowedHost at /.If you attempt to visit the app's URL at this point, you encounter the error "DisallowedHost at /". Эта ошибка возникает, если вы еще не настроили приложение для использования параметров рабочей среды, описанных выше. Мы выполним эти настройки в следующем разделе.This error happens because you have not yet configured the app to use the production settings discussed earlier, which you do in the following section.

Настройка переменных среды для подключения к базе данныхConfigure environment variables to connect the database

Теперь, когда код развернут в Службе приложений, необходимо подключить приложение к базе данных Postgres в Azure.With the code now deployed to App Service, the next step is to connect the app to the Postgres database in Azure.

Код приложения должен находить сведения о базе данных в переменных среды.The app code expects to find database information in a number of environment variables. Чтобы задать в Службе приложений переменные среды, вы создаете параметры приложения с помощью команды az webapp config appsettings set.To set environment variables in App Service, you create "app settings" with the az webapp config appsettings set command.

az webapp config appsettings set --settings DJANGO_ENV="production" DBHOST="<postgres-server-name>.postgres.database.azure.com" DBNAME="pollsdb" DBUSER="<username>@<postgres-server-name>" DBPASS="<password>"
  • Замените <postgres-server-name> именем, которое использовали ранее с помощью команды az postgres up.Replace <postgres-server-name> with the name you used earlier with the az postgres up command.
  • Замените <username> и <password> учетными данными, которые также создаются командой.Replace <username> and <password> with the credentials that the command also generated for you. Аргумент DBUSER должен быть в формате <username>@<postgres-server-name>.The DBUSER argument must be in the form <username>@<postgres-server-name>.
  • Имена группы ресурсов и приложения извлекаются из кэшированных значений в файле .azure/config.The resource group and app name are drawn from the cached values in the .azure/config file.
  • Команда создает параметры с именами DJANGO_ENV, DBHOST, DBNAME, DBUSER и DBPASS, которые ожидает код приложения.The command creates settings named DJANGO_ENV, DBHOST, DBNAME, DBUSER, and DBPASS as expected by the app code.
  • В коде Python можно обращаться к этим параметрам как к переменным среды с помощью таких инструкций, как os.environ.get('DJANGO_ENV').In your Python code, you access these settings as environment variables with statements like os.environ.get('DJANGO_ENV'). Дополнительную информацию см. в разделе Доступ к переменным среды.For more information, see Access environment variables.

Возникли проблемы? Сообщите нам!Having issues? Let us know.

Перенос базы данных DjangoRun Django database migrations

Перенос баз данных Django гарантирует, что схема в базе данных PostgreSQL в Azure соответствует схемам, описанным в вашем коде.Django database migrations ensure that the schema in the PostgreSQL on Azure database match those described in your code.

  1. Откройте в браузере сеанс SSH, перейдя по следующему URL-адресу, и выполните вход с использованием данных учетной записи Azure (а не учетных данных сервера базы данных).Open an SSH session in the browser by navigating to the following URL and signing in with your Azure account credentials (not the database server credentials).

    https://<app-name>.scm.azurewebsites.net/webssh/host
    

    Замените <app-name> именем, которое использовали ранее в команде az webapp up.Replace <app-name> with the name used earlier in the az webapp up command.

    В macOS и Linux можно также подключиться к сеансу SSH с помощью команды az webapp ssh.On macOS and Linux, you can alternately connect to an SSH session with the az webapp ssh command.

  2. Выполните следующие команды в сеансе SSH (можно вставить команды с помощью сочетания клавиш CTRL+SHIFT+V):In the SSH session, run the following commands (you can paste commands using Ctrl+Shift+V):

    # Change to the folder where the app code is deployed
    cd site/wwwroot
    
    # Activate default virtual environment in App Service container
    source /antenv/bin/activate
    
    # Install packages
    pip install -r requirements.txt
    
    # Run database migrations
    python manage.py migrate
    
    # Create the super user (follow prompts)
    python manage.py createsuperuser
    
  3. Команда createsuperuser запросит учетные данные суперпользователя.The createsuperuser command prompts you for superuser credentials. В рамках этого учебника используйте имя пользователя по умолчанию root, нажмите ВВОД, чтобы адрес электронной почты оставался пустым, а затем введите Pollsdb1 в качестве пароля.For the purposes of this tutorial, use the default username root, press Enter for the email address to leave it blank, and enter Pollsdb1 for the password.

  4. Если отображается сообщение-ошибка о том, что база данных заблокирована, убедитесь, что в предыдущем разделе вы выполнили команду az webapp settings.If you see an error that the database is locked, make sure that you ran the az webapp settings command in the previous section. Без этих параметров команда переноса не сможет взаимодействовать с базой данных, что приведет к ошибке.Without those settings, the migrate command cannot communicate with the database, resulting in the error.

Возникли проблемы? Сообщите нам!Having issues? Let us know.

Создание вопроса опроса в приложенииCreate a poll question in the app

  1. В браузере откройте URL-адрес http://<app-name>.azurewebsites.net.In a browser, open the URL http://<app-name>.azurewebsites.net. В приложении должно отобразиться сообщение No polls are available (Доступных опросов нет), так как в базе данных нет отдельных опросов.The app should display the message "No polls are available" because there are no specific polls yet in the database.

  2. Перейдите по адресу http://<app-name>.azurewebsites.net/admin.Browse to http://<app-name>.azurewebsites.net/admin. Выполните вход с использованием учетных данных суперпользователя из предыдущего раздела (root и Pollsdb1).Sign in using superuser credentials from the previous section (root and Pollsdb1). В разделе Polls (Опросы) щелкните Add (Добавить) возле поля Questions (Вопросы) и создайте вопрос с несколькими вариантами ответа.Under Polls, select Add next to Questions and create a poll question with some choices.

  3. Еще раз перейдите по адресу http://<app-name>.azurewebsites.net, чтобы убедиться, что пользователь видит вопросы.Browse again to http://<app-name>.azurewebsites.net to confirm that the questions are now presented to the user. Ответьте на вопросы произвольным образом, чтобы наполнить базу данных.Answer questions however you like to generate some data in the database.

Поздравляем!Congratulations! Вы запустили веб-приложение Python Django в Службе приложений Azure для Linux с активной базой данных Postgres.You're running a Python Django web app in Azure App Service for Linux, with an active Postgres database.

Возникли проблемы? Сообщите нам!Having issues? Let us know.

Примечание

Служба приложений определяет проекты Django по файлу wsgi.py в каждой подпапке, которая создается в manage.py startproject по умолчанию.App Service detects a Django project by looking for a wsgi.py file in each subfolder, which manage.py startproject creates by default. Обнаружив такой файл, Служба приложений загружает веб-приложение Django.When App Service finds that file, it loads the Django web app. Дополнительные сведения см. в статье о настройке встроенного образа Python.For more information, see Configure built-in Python image.

Внесение изменений в код и его повторное развертываниеMake code changes and redeploy

В этом разделе вы внесете локальные изменения в приложение и повторно развернете код в Службе приложений.In this section, you make local changes to the app and redeploy the code to App Service. В процессе вы настроите виртуальную среду Python, которая поддерживает текущую работу.In the process, you set up a Python virtual environment that supports ongoing work.

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

Выполните следующие команды в окне терминала.In a terminal window, run the following commands. При создании суперпользователя обязательно следуйте указаниям на экране:Be sure to follow the prompts when creating the superuser:

# Configure the Python virtual environment
python3 -m venv venv
source venv/bin/activate

# Install packages
pip install -r requirements.txt
# Run Django migrations
python manage.py migrate
# Create Django superuser (follow prompts)
python manage.py createsuperuser
# Run the dev server
python manage.py runserver

После полной загрузки веб-приложения сервер разработки Django предоставит URL-адрес локального приложения в сообщении Starting development server at http://127.0.0.1:8000/.Once the web app is fully loaded, the Django development server provides the local app URL in the message, "Starting development server at http://127.0.0.1:8000/. Quit the server with CTRL-BREAK. (Запуск сервера разработки по адресу http://127.0.0.1:8000/. Выйдите из сервера с помощью клавиш CTRL+BREAK).Quit the server with CTRL-BREAK".

Пример выходных данных сервера разработки Django

Локально протестируйте приложение, выполнив следующие действия:Test the app locally with the following steps:

  1. Перейдите в браузере по адресу http://localhost:8000. Должно отобразиться сообщение No polls are available (Доступных опросов нет).Go to http://localhost:8000 in a browser, which should display the message "No polls are available".

  2. Перейдите к http:///localhost:8000/admin и войдите под именем администратора, который был создан ранее.Go to http:///localhost:8000/admin and sign in using the admin user you created previously. В разделе Polls (Опросы) снова щелкните Add (Добавить) возле поля Questions (Вопросы) и создайте вопрос с несколькими вариантами ответа.Under Polls, again select Add next to Questions and create a poll question with some choices.

  3. Снова перейдите по адресу http://localhost:8000 и ответьте на вопрос, чтобы проверить приложение.Go to http://localhost:8000 again and answer the question to test the app.

  4. Остановите сервер Django, нажав клавиши CTRL+C.Stop the Django server by pressing Ctrl+C.

При локальном запуске приложение использует локальную базу данных Sqlite3 и не влияет на рабочую базу данных.When running locally, the app is using a local Sqlite3 database and doesn't interfere with your production database. При необходимости можно также использовать локальную базу данных PostgreSQL, чтобы лучше имитировать рабочую среду.You can also use a local PostgreSQL database, if desired, to better simulate your production environment.

Возникли проблемы? Сообщите нам!Having issues? Let us know.

Обновление приложенияUpdate the app

В файле polls/models.py найдите строку, которая начинается с choice_text и измените значение параметра max_length на 100:In polls/models.py, locate the line that begins with choice_text and change the max_length parameter to 100:

# Find this lie of code and set max_length to 100 instead of 200
choice_text = models.CharField(max_length=100)

Так как вы изменили модель данных, создайте миграцию Django и перенесите базу данных:Because you changed the data model, create a new Django migration and migrate the database:

python manage.py makemigrations
python manage.py migrate

Снова запустите сервер разработки с python manage.py runserver и протестируйте приложение по адресу http://localhost:8000/admin:Run the development server again with python manage.py runserver and test the app at to http://localhost:8000/admin:

Снова остановите веб-сервер Django с помощью комбинации клавиш CTRL+C.Stop the Django web server again with Ctrl+C.

Возникли проблемы? Сообщите нам!Having issues? Let us know.

Повторное развертывание кода в AzureRedeploy the code to Azure

Выполните следующую команду в корне репозитория:Run the following command in the repository root:

az webapp up

Эта команда использует параметры, кэшированные в файле .azure/config.This command uses the parameters cached in the .azure/config file. Так как Служба приложений обнаружит, что приложение уже существует, она просто повторно развернет в нем код.Because App Service detects that the app already exists, it just redeploys the code.

Возникли проблемы? Сообщите нам!Having issues? Let us know.

Повторное выполнение миграций в AzureRerun migrations in Azure

Поскольку вы внесли изменения в модель данных, все миграции базы данных нужно повторить в Службе приложений.Because you made changes to the data model, you need to rerun database migrations in App Service.

Еще раз откройте в браузере сеанс SSH, перейдя по адресу https://<app-name>.scm.azurewebsites.net/webssh/host.Open an SSH session again in the browser by navigating to https://<app-name>.scm.azurewebsites.net/webssh/host. Затем выполните следующие команды:Then run the following commands:

cd site/wwwroot

# Activate default virtual environment in App Service container
source /antenv/bin/activate
# Run database migrations
python manage.py migrate

Возникли проблемы? Сообщите нам!Having issues? Let us know.

Проверка приложения в рабочей средеReview app in production

Перейдите по адресу http://<app-name>.azurewebsites.net и снова проверьте приложение в рабочей среде.Browse to http://<app-name>.azurewebsites.net and test the app again in production. (Поскольку вы изменили только длину поля базы данных, это изменение заметно только при попытке ввести более длинный ответ при создании вопроса.)(Because you only changed the length of a database field, the change is only noticeable if you try to enter a longer response when creation a question.)

Возникли проблемы? Сообщите нам!Having issues? Let us know.

Потоковая передача журналов диагностикиStream diagnostic logs

Вы можете получить доступ к журналам консоли, созданным в контейнере, в котором размещено приложение в Azure.You can access the console logs generated from inside the container that hosts the app on Azure.

Выполните следующую команду Azure CLI, чтобы увидеть поток журнала.Run the following Azure CLI command to see the log stream. Эта команда использует параметры, кэшированные в файле .azure/config.This command uses parameters cached in the .azure/config file.

az webapp log tail

Если журналы консоли не отображаются, проверьте еще раз через 30 секунд.If you don't see console logs immediately, check again in 30 seconds.

Чтобы остановить потоковую передачу журналов, нажмите клавиши CTRL+C.To stop log streaming at any time, type Ctrl+C.

Возникли проблемы? Сообщите нам!Having issues? Let us know.

Примечание

Вы также можете проверить файлы журнала в браузере на странице https://<app-name>.scm.azurewebsites.net/api/logs/docker.You can also inspect the log files from the browser at https://<app-name>.scm.azurewebsites.net/api/logs/docker.

Команда az webapp up позволяет включить ведение журналов по умолчанию.az webapp up turns on the default logging for you. Чтобы не ухудшать производительность, через некоторое время ведение журнала отключается, но включается повторно при каждом запуске az webapp up.For performance reasons, this logging turns itself off after some time, but turns back on each time you run az webapp up again. Чтобы отключить его вручную, выполните следующую команду:To turn it on manually, run the following command:

az webapp log config --docker-container-logging filesystem

Управление приложением с помощью портала AzureManage your app in the Azure portal

На портале Azure выполните поиск приложения по имени и выберите его.In the Azure portal, search for the app name and select the app in the results.

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

По умолчанию на портале отображается страница Обзор приложения с общим представлением данных о производительности.By default, the portal shows your app's Overview page, which provides a general performance view. Вы можете выполнять здесь базовые задачи управления, например просмотр, остановку, перезагрузку и удаление.Here, you can also perform basic management tasks like browse, stop, restart, and delete. На вкладках в левой части страницы отображаются различные страницы конфигурации, которые можно открыть.The tabs on the left side of the page show the different configuration pages you can open.

Управление приложением Python (Django) на странице "Обзор" на портале Azure

Возникли проблемы? Сообщите нам!Having issues? Let us know.

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

Если вы хотите сохранить приложение или продолжить работу со следующим учебником, перейдите к дальнейшим действиям.If you'd like to keep the app or continue to the next tutorial, skip ahead to Next steps. В противном случае, чтобы избежать постоянных расходов, вы можете удалить группу ресурсов, созданную для этого учебника:Otherwise, to avoid incurring ongoing charges you can delete the resource group create for this tutorial:

az group delete --no-wait

Эта команда использует имя группы ресурсов, кэшированное в файле .azure/config.The command uses the resource group name cached in the .azure/config file. При удалении группы ресурсов будут также освобождены и удалены все ресурсы, содержащиеся в ней.By deleting the resource group, you also deallocate and delete all the resources contained within it.

Удаление всех ресурсов может занять некоторое время.Deleting all the resources can take some time. Аргумент --no-wait позволяет команде выполнять возврат без задержки.The --no-wait argument allows the command to return immediately.

Возникли проблемы? Сообщите нам!Having issues? Let us know.

Дальнейшие действияNext steps

Сведения о сопоставлении настраиваемого DNS-имени с вашим приложением:Learn how to map a custom DNS name to your app:

Узнайте, как Служба приложений запускает приложение Python:Learn how App Service runs a Python app: