【发布时间】:2020-05-19 13:52:15
【问题描述】:
我正在尝试使用 Docker 运行我的计时器触发天蓝色函数示例。它在调试和发布模式下都可以在 Visual Studio 中正常工作。但是当使用docker时
docker run -d -p 8080:80 testdockercors
应用程序启动并显示以下消息,但我的计时器触发 azure 功能未运行。
Hosting environment: Production
Content root path: /app
Now listening on: http://[::]:80
Application started. Press Ctrl+C to shut down..
但从 Visual Studio 运行时,计时器触发器工作正常。请找到我的 docker 文件。
FROM mcr.microsoft.com/dotnet/core/sdk:3.1-buster AS build
WORKDIR /src
COPY ["Testdockercors/Testdockercors.csproj", "Testdockercors/"]
RUN dotnet restore "Testdockercors/Testdockercors.csproj"
COPY . .
WORKDIR "/src/Testdockercors"
RUN dotnet build "Testdockercors.csproj" -c Release -o /app/build
FROM build AS publish
RUN dotnet publish "Testdockercors.csproj" -c Release -o /app/publish
FROM base AS final
WORKDIR /app
COPY --from=publish /app/publish .
ENV AzureWebJobsScriptRoot=/app
ENV AzureWebJobsStorage="UseDevelopmentStorage=true"
当我将环境 AzureWebJobsStorage 值更改为现有的 azure 存储连接字符串时,它也可以在 docker 中使用。但我想使用 docker 中的存储,而不是 azure 中可用的存储。
【问题讨论】:
标签: azure docker azure-functions azure-function-app azure-storage-emulator