Не удается запустить приложение .net core Устойчивые функции Azure версии 3 в докере
Я пытаюсь реализовать
docker-compose.yml
файл для создания контейнера для .net core Azure Durable Function v3. Следующий фрагмент кода взят из файла среды, т.е.
.env
:
AzureWebJobsStorage=MyConnectionString
AzureWebJobsDashboard=MyConnectionString
AzureWebJobsStorageQueue=MyAnotherConnectionString
Вот так выглядит часть файла docker-compose:
local.mydurablefunction:
image: ${DOCKER_REGISTRY-}myfunction
build:
context: .
dockerfile: src/MyFunction/Dockerfile
ports:
- 34080:34080
environment:
- AzureWebJobsStorageQueue
- AzureWebJobsDashboard
- AzureWebJobsStorageQueue
При работе
docker-compose up
Я получаю следующее сообщение об ошибке:
fail: Host.Startup[515] Произошла ошибка хоста во время операции запуска 'd8e39085-bed2-4f30-b80b-37d2fe1b286d'.System.InvalidOperationException: не удалось найти строку подключения к хранилищу Azure, которую можно использовать для этой привязки. в Microsoft.Azure.WebJobs.Extensions.DurableTask.AzureStorageDurabilityProviderFactory.GetAzureStorageOrchestrationServiceSettings(StringconnectionName, String taskHub
Вот как выглядит функция:
[FunctionName("MyTrigger")]
public async Task RunAsync(
[QueueTrigger("queuename", Connection = "")] string metadataPayload,
[DurableClient] IDurableOrchestrationClient starter,
ILogger log,
CancellationToken cancellationToken)
{
}
Где-то в теле функции мы вызываем долговременную задачу, которая выглядит как следующий фрагмент кода:
[FunctionName("Orchestrator")]
public async Task RunOrchestratorAsync(
[OrchestrationTrigger] IDurableOrchestrationContext context,
[DurableClient] IDurableOrchestrationClient orchestrationClient,
ILogger log)
{
}
И это определение зависимости службы:
{
"dependencies": {
"storage1": {
"type": "storage",
"connectionId": "AzureWebJobsStorageQueue"
}
}
}
Каково решение этой проблемы или чего может не хватать в этой конфигурации? Может ли это быть связано с невозможностью скопировать переменные среды в контейнер?