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


Обмен данными между приложениями-контейнерами в приложениях контейнеров Azure

Контейнеры приложений Azure предоставляют каждое приложение-контейнер посредством доменного имени, если включен входящий трафик. Конечные точки входа можно предоставлять общедоступными либо другим контейнерным приложениям в той же среде. Кроме того, можно ограничить входящий трафик только другими приложениями-контейнерами в той же среде.

Код приложения может вызывать другие приложения-контейнеры в той же среде с помощью одного из следующих методов:

  • Полное квалифицированное доменное имя (FQDN) по умолчанию
  • Имя личного домена
  • Имя приложения контейнера, например http://<APP_NAME> для внутренних запросов
  • URL-адрес Dapr

Примечание.

При вызове другого контейнера в той же среде с помощью полного доменного имени или имени приложения сетевой трафик никогда не покидает среду.

Пример решения, в котором показано, как можно выполнять вызовы между контейнерами с помощью расположения полного доменного имени или Dapr, можно найти в примерах Azure.

Расположение

Расположение приложения-контейнера состоит из значений, связанных с его средой, именем и регионом. Полное доменное имя (FQDN), доступное через домен верхнего уровня azurecontainerapps.io, использует:

  • Имя приложения контейнера
  • Уникальный идентификатор среды
  • Имя региона

На следующей схеме показано, как эти значения используются для создания полного доменного имени приложения-контейнера.

Полное доменное имя контейнерного приложения Azure Container Apps.

Получение полного доменного имени

Команда az containerapp show возвращает полное доменное имя приложения-контейнера.

az containerapp show \
  --resource-group <RESOURCE_GROUP_NAME> \
  --name <CONTAINER_APP_NAME> \
  --query properties.configuration.ingress.fqdn

В этом примере замените плейсхолдеры, окружённые символами <>, на ваши значения.

Значение, возвращаемое этой командой, напоминает доменное имя, как показано в следующем примере:

myapp.happyhill-70162bb9.canadacentral.azurecontainerapps.io

Расположение Dapr

Для разработки микрослужб часто требуется реализовать шаблоны, общие для распределенной архитектуры. Dapr позволяет защитить микрослужбы с помощью взаимной защиты с использованием TLS (сертификатов клиента), активировать повторные попытки при возникновении ошибок и использовать распределенную трассировку при включении аналитики приложения Azure Insights.

Микрослужба, использующая Dapr, доступна по следующему шаблону URL-адреса:

Расположение контейнера приложений контейнеров Azure с помощью Dapr.

Вызов приложения контейнера по имени

Вы можете вызвать приложение-контейнер, отправив запрос http://<CONTAINER_APP_NAME> из другого приложения в среде.

Следующие шаги