如何在自己的Docker映像上安装Function App绑定

时间:2019-10-21 15:40:04

标签: azure docker azure-functions

我正在尝试使用自己的Docker映像(按照https://docs.microsoft.com/en-us/azure/azure-functions/functions-create-function-linux-custom-image?tabs=nodejs)设置Azure Function应用

但是我不知道如何安装扩展程序(例如,根据https://docs.microsoft.com/fr-fr/azure/azure-functions/install-update-binding-extensions-manual,CosmosDBTrigger)

有可能吗?感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

如果要将其添加到Visual Studio中的项目中,请使用包管理器:

Install-Package Microsoft.Azure.WebJobs.Extensions.CosmosDB -Version 3.0.4

确保您的.csproj文件中包含此程序包引用:

<PackageReference Include="Microsoft.Azure.WebJobs.Extensions.CosmosDB" Version="3.0.4" />

如果您需要手动添加,可以通过Kudu进行添加,您可以通过https://[your-func-hostname].scm.azurewebsites.net-完整说明here

进行访问

只有在使用持久性存储时,才能手动添加到已部署的Docker容器中。

  

您可以使用名为WEBSITES_ENABLE_APP_SERVICE_STORAGE的应用设置   控制应用程序的/ home目录是否映射到   Azure存储。如果需要将文件保留在秤操作中   或在重启后,您应该添加此应用设置并将其设置为   “真正”。如果您不需要文件持久性,则可以设置此应用   设置为false。

     

缺少此应用设置将导致该设置被   “真正”。换句话说,如果您不存在此应用设置   应用程序,您将看到/ home目录映射到Azure存储。该应用程序   如果您在为Web应用程序创建应用程序时缺少设置   容器处于公开预览状态或有人删除了该应用   设置。

     

请记住,如果启用App Service Storage,则当Azure   您的站点发生存储转换(确实会定期发生)   存储量更改时将重新启动。

     

注意:如果未启用App Service存储,则将任何文件写入   / home文件夹将不会在所有实例之间保留(在这种情况下   扩展)或重新启动。

     

即使禁用了存储持久性,/ home目录也将是   映射到Kudu(高级工具)容器中的Azure存储。那   这样,/ home / LogFiles目录将在重新启动和   扩展Kudu容器中的操作。因此,如果您需要   获取Docker日志或其他日志,请始终使用Kudu Bash控制台   而不是使用SSH访问应用程序的容器。 (请参阅此   有关如何从Kudu获取最新Docker日志的更多信息。)

     

注意:如果您在Linux应用程序上的Azure应用程序服务上设置此应用程序设置   使用内置图像,不会有任何影响。

来源:https://blogs.msdn.microsoft.com/waws/2017/09/08/things-you-should-know-web-apps-and-linux/#NoStorage