是否可以在本地运行Azure Logic应用程序



Azure逻辑应用程序的最新公告称

"有了这个版本,你现在可以在任何运行Azure的地方运行Logic应用程序函数–在Docker或Kubernetes环境中容器化,例如用于托管PaaS的AKS(Azure Kubernetes服务(或应用程序服务经验;

它可以在docker中托管吗?我没有看到任何与此相关的文章。

是的,文档展示了如何将应用程序打包到Docker容器中:https://learn.microsoft.com/en-us/azure/logic-apps/create-stateful-stateless-workflows-visual-studio-code#deploy-到码头集装箱。

来自文档:

dotnet build-c发布

dotnet publish-c发布

docker构建--标记本地/工作流容器。

该示例使用如下的dockerfile:

FROM mcr.microsoft.com/azure-functions/dotnet:3.0.14492-appservice
ENV AzureWebJobsStorage <storage-account-connection-string>
ENV AZURE_FUNCTIONS_ENVIRONMENT Development
ENV AzureWebJobsScriptRoot=/home/site/wwwroot
ENV AzureFunctionsJobHost__Logging__Console__IsEnabled=true
ENV FUNCTIONS_V2_COMPATIBILITY_MODE=true
COPY ./bin/Release/netcoreapp3.1/publish/ /home/site/wwwroot

然后使用运行容器

docker run-e WEBSITE_HOSTNAME=localhost-p 8080:80 local/workflowcontainer

上面引用的链接不再提供有关如何实现Docker支持的信息。

把上面的回复拼凑在一起,我最终做了以下事情:

  1. 在VSCode中的逻辑应用程序项目中,将DockerFile添加到项目的根目录
  2. 粘贴docker说明中引用的@juunas:

FROM mcr.microsoft.com/azure-functions/dotnet:3.0.14492-appservice
ENV AzureWebJobsStorage={FILL-IN-YOUR-STORAGE-ACCOUNT-CONNECTION-STRING}
ENV AZURE_FUNCTIONS_ENVIRONMENT Development
ENV AzureWebJobsScriptRoot=/home/site/wwwroot
ENV AzureFunctionsJobHost__Logging__Console__IsEnabled=true
ENV FUNCTIONS_V2_COMPATIBILITY_MODE=true
COPY ./bin/release/netcoreapp3.1/publish/ /home/site/wwwroot

  1. 从命令提示符运行以下命令

dotnet build -c release
dotnet publish -c release

  1. 构建docker镜像

docker build --tag local/workflowcontainer .

  1. 运行您的容器

docker run -e WEBSITE_HOSTNAME=localhost -p 8080:80 local/workflowcontainer

我从以下网站收集了以上信息:

https://microsoft.github.io/AzureTipsAndTricks/blog/tip311.html

相关内容

  • 没有找到相关文章

最新更新