Поделиться через


Подключение к консоли отладки контейнера в приложениях контейнеров Azure

Платформа приложений контейнеров Azure предлагает консоль отладки для устранения неполадок приложения в следующих обстоятельствах:

  • Вы не можете подключиться к целевому контейнеру, если вы используете контейнер, который включает только приложение и его зависимости среды выполнения, или образ без дистрибутива.
  • При возникновении проблем с сетью образы не имеют служебных программ отладки для их изучения.

Вы можете подключиться к консоли отладки с помощью Azure CLI.

Примечание.

Консоль отладки создает отдельный контейнер, который использует базовые ресурсы с контейнером, на котором выполняется приложение. Если контейнер отладки уже существует, консоль отладки повторно использует существующую вместо создания новой. Существует не более одного запущенного контейнера отладки для каждой реплики приложения контейнера. Если вам не нужно выполнять контейнер отладки, введите выход или используйте ctrl/Cmd + D в сеансе консоли отладки.

Azure CLI (Интерфейс командной строки для Azure)

Чтобы подключиться к контейнеру консоли отладки, используйте az containerapp debug команду. Чтобы выйти из консоли, введите клавишуCTRL/CMD+D.

Например, подключитесь к консоли отладки контейнера в приложении контейнера с одним контейнером с помощью следующей команды. Перед выполнением этой команды замените <PLACEHOLDERS> значения приложения-контейнера.

az containerapp debug \
  --name <CONTAINER_APP_NAME> \
  --resource-group <RESOURCE_GROUP>

Чтобы подключиться к консоли отладки контейнера в приложении контейнера с несколькими редакциями, репликами и контейнерами, включите следующие параметры в az containerapp debug команду.

Аргумент Описание
--revision Имя редакции контейнера для отладки.
--replica Имя реплики контейнера для отладки.
--container Имя контейнера для отладки.

Имена редакций az containerapp revision list можно получить с помощью команды. Перед выполнением этой команды замените <PLACEHOLDERS> значения приложения-контейнера.

az containerapp revision list \
  --name <CONTAINER_APP_NAME> \
  --resource-group <RESOURCE_GROUP> \
  --query "[].name"

az containerapp replica list Используйте команду, чтобы получить имена реплик и контейнеров. Перед выполнением этой команды замените <PLACEHOLDERS> значения приложения-контейнера.

az containerapp replica list \
  --name <CONTAINER_APP_NAME> \
  --resource-group <RESOURCE_GROUP> \
  --revision <REVISION_NAME> \
  --query "[].{Containers:properties.containers[].name, Name:name}"

Подключитесь к консоли отладки контейнера с помощью az containerapp debug команды. Перед выполнением этой команды замените <PLACEHOLDERS> значения приложения-контейнера.

az containerapp debug \
  --name <CONTAINER_APP_NAME> \
  --resource-group <RESOURCE_GROUP> \
  --revision <REVISION_NAME> \
  --replica <REPLICA_NAME> \
  --container <CONTAINER_NAME> 

Встроенные средства в консоли отладки

Следующие средства диагностики предварительно установлены в консоли отладки для устранения неполадок:

Если вы хотите установить другие средства, выполните tdnf install -y <TOOL_NAME> команду. Перед выполнением этой команды замените <PLACEHOLDERS> значения приложения-контейнера.

Например, установите JDK в консоли отладки с помощью следующей команды:

tdnf install -y msopenjdk-17

Доступ к файловой системе контейнера в консоли отладки

По умолчанию консоль отладки выполняется от имени root пользователя. Вы можете получить доступ к файловой системе /proc/1/cwd/ контейнера через каталог. Если контейнер не запускается от имени корневого пользователя, выполните следующую команду перед доступом к /proc/1/cwd/ каталогу или вы получите ошибку с отказом в разрешении.

switch-user

Для получения дополнительной информации см. следующие страницы справки Linux: