是否可以在本地IIS中部署Azure功能?

时间:2017-11-16 08:44:01

标签: azure iis azure-functions

我使用Visual Studio 2017创建了一个HttpTrigger。我可以调试并能够使用下面提到的URL从Web浏览器调用azure函数。

  

本地主机:7071 / API / Demofunction名称=阿米特

我已在系统的本地文件夹中发布了项目。是否可以在本地IIS中部署生成的dll并从浏览器调用API?如果是,那该怎么办?

3 个答案:

答案 0 :(得分:1)

是的,这是可能的,但不适用于IIS。你应该咨询this artice。基本上你需要安装一堆东西,然后配置你的功能来运行它们。

之后它只是一个常规功能

答案 1 :(得分:1)

如果您主要关心的是如何在内部使用Azure功能而不是使用azure,则可以使用Azure Functions Runtime在内部部署和运行azure函数:

  

Azure Functions Runtime为您提供了一种利用本地Azure Functions编程模型的简单性和灵活性的新方法。 Azure函数运行时基于与Azure功能相同的开源根,在本地部署,以提供与云服务几乎相同的开发体验。

答案 2 :(得分:1)

我认为您应该看一下这篇文章:

https://dev.to/gjcampbell/running-azure-functions-in-iis-32a

似乎您可以在IIS上运行.net core V2 Azure函数。

所有您需要做的就是从azure-functions GitHub存储库(here)下载并安装发行版(here),并配置IIS托管的一个相当空的网站的web.config:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <system.webServer>
    <handlers>
      <remove name="aspNetCore" />
      <add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModuleV2" resourceType="Unspecified" />
    </handlers>
    <aspNetCore processPath="C:\hosting\Functions.3.0.14191\3.0.14191\64bit\Microsoft.Azure.WebJobs.Script.WebHost.exe" hostingModel="InProcess">
      <environmentVariables>
        <environmentVariable name="AzureWebJobsStorage" value="UseDevelopmentStorage=true" />
      </environmentVariables>
    </aspNetCore>
  </system.webServer>
</configuration>

当然,您还将需要在服务器(download)上安装.NET Core Runtime。