如何发布到Azure Functions Runtime

时间:2017-05-16 03:32:44

标签: c# azure visual-studio-2017 azure-functions

Azure Functions Runtime博客文章(https://azure.microsoft.com/en-us/blog/introducing-azure-functions-runtime-preview/)声明如下:

  

它提供了一个允许您发布函数的端点   Microsoft Visual Studio,Team Foundation Server或Visual Studio Team   服务。

我找不到任何有关如何发布到Azure Functions Runtime的本地实例而不是Azure云的示例。我希望使用Visual Studio 2017 Azure功能工具(https://blogs.msdn.microsoft.com/webdev/2017/05/10/azure-function-tools-for-visual-studio-2017/)发布预编译的Azure功能。

2 个答案:

答案 0 :(得分:4)

您可以通过从门户网站下载发布配置文件,然后在Visual Studio 2015中的“发布...”对话框中将其导入,将功能发布到Azure功能运行时预览:

enter image description here

enter image description here

关于VS2017工具支持,目前无法将发布设置导入“发布”对话框。我们目前正与VS团队合作。

答案 1 :(得分:3)

来自:https://docs.microsoft.com/en-us/azure/azure-functions/functions-reference

如何更新功能应用文件

Azure门户中内置的函数编辑器允许您更新function.json文件和函数的代码文件。要上传或更新其他文件,例如package.jsonproject.json或依赖项,您必须使用其他部署方法。

功能应用程序基于App Service构建,因此所有deployment options available to standard web apps也可用于功能应用程序。以下是一些可用于上传或更新功能应用文件的方法。

使用App Service Editor

  1. 在Azure Functions门户中,单击“功能应用程序设置”。
  2. 在“高级设置”部分中,单击“转到应用服务设置”。
  3. 在“开发工具”下的“应用程序菜单导航”中单击“应用程序服务编辑器”。
  4. 点击Go。
  5. 加载App Service编辑后,您会在host.json下看到wwwroot文件和功能文件夹。
  6. 打开文件进行编辑,或从开发机器拖放到上传文件。
  7. 使用功能应用的SCM(Kudu)端点

    1. 导航至:https://<function_app_name>.scm.azurewebsites.net
    2. 点击调试控制台&gt; CMD。
    3. 导航至D:\home\site\wwwroot\更新host.jsonD:\home\site\wwwroot\<function_name>以更新功能文件。
    4. 将要上传的文件拖放到文件网格中的相应文件夹中。文件网格中有两个区域可以删除文件。对于.zip文件,会出现一个带有标签&#34;在此处拖动以上传和解压缩的框。&#34;对于其他文件类型,请放入文件网格,但在&#34;解压缩&#34;之外。框。
    5. 使用FTP

      1. 按照此处的说明进行FTP配置。
      2. 当您连接到功能应用网站时,请将更新的host.json文件复制到/site/wwwroot或将功能文件复制到/site/wwwroot/<function_name>
      3. 使用持续部署

        按照主题Continuous deployment for Azure Functions

        中的说明进行操作

        来自:https://docs.microsoft.com/en-us/azure/azure-functions/functions-runtime-overview

        Azure功能运行时概述

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

        Azure Functions Runtime由两部分组成:

        • Azure功能运行时管理角色
        • Azure函数运行时工作者角色

        Azure功能管理角色

        Azure功能管理角色提供了一个用于管理内部部署功能的主机。此角色执行以下任务:

        • Azure功能管理门户的托管,与您在Azure门户中看到的门户相同。这使您可以像在Azure门户中一样开发功能。
        • 跨多个职能工作人员分发职能。
        • 提供发布端点,以便您可以直接从Microsoft Visual Studio发布功能。

        如果您阅读MSDN blog link that you provided,我认为您的问题都已在那里得到解答。 (尽管您必须指向本地(本地)而不是云(Azure)。

        如何直接从Visual Studio

        将Function项目发布到Azure
          

        直接从Visual Studio向Azure发布Function项目,   右键单击该项目,然后选择“发布”。在发布页面上,您   可以在Azure中创建新的功能应用程序,也可以发布到   现有的。注意:即使文件夹选项是当前的   出现时,它目前不适用于Azure功能。

        如何在Visual Studio中本地部署Function项目

          

        要向应用程序添加功能,请右键单击项目和   选择“添加项目”,然后选择“Azure功能”项目模板。   这将启动Azure功能对话框,供您选择   您想要的功能类型,并输入任何相关的绑定   信息。例如,在下面的对话框中,队列触发器会询问   你为函数的名称,连接字符串的名称   存储队列和队列名称(路径)

             

        这将生成一个具有以下元素的新类:

             
            
        • 静态Run方法,属于[FunctionName]属性。   [FunctionName]属性表示该方法是条目   用于Azure功能。
        •   
        • 第一个参数有一个QueueTrigger   属性,这是表示队列触发器功能(和   将绑定信息作为参数提取给属性。在这   case队列的名称和连接字符串的设置名称)
        •   
             

        一旦你有了一个功能,本地开发就像你一样   期望。您可以在本地运行和调试它,添加NuGet包,创建   单元测试,以及你为类库做的其他任何事情。