繁体   English   中英

在 Azure 函数中安装 Powershell 模块

[英]Install Powershell Modules in Azure Function

我正在使用带有 Powershell 的 Azure Function 2.0,并且在安装 Powershell 模块时出现以下错误。

有什么办法可以摆脱这个错误。 通常,我们不需要管理员权限来安装 NuGet/依赖项。

我还尝试用另一种方法将所有 Powershell 模块放在 Modules 文件夹下在此处输入图片说明

仍然,函数无法找到 Cosmos DB 模块

在此处输入图片说明

如果要使用的模块位于 PowerShell 库中,从 PowerShell 函数中使用它们的最简单方法是利用托管依赖项功能。 您需要做的就是确保在 host.json 中启用了该功能:

{
  "managedDependency": {
          "enabled": true
       }
}

并且您的模块在requirements.psd1中提到:

@{
    Az = '2.*'
    SqlServer = '21.1.18147'
}

Azure Functions 将自动确保这些模块已安装并可用于你的函数。 无需复制文件。

另请注意 Azure Functions v2.0 不支持AzureRM模块,请改用Az

不能像在之前从该站点安装Az.Profile本地计算机上那样简单地调用Import-Module Az.Profile 但是,您必须将本地安装包中的所有文件复制到 Azure 中 Function App 内的特定文件夹中。

1.在本地安装Az.Profile并转到其文件夹以获取其中的所有内容。

2.转到您的功能KUDU。 单击 CMD>site>wwwroot>yourFunctionName 然后创建一个名为modules的目录。

3. 只需drag-and-drop所有文件从本地 powershell 模块位置drag-and-drop到上面创建的 Azure Function App 文件夹( modules )。

4. 在run.ps1文件中包含Az.Profile PowerShell 模块,如下例所示:

Import-Module "D:\home\site\wwwroot\HttpTrigger1\modules\Az.Profile.psd1"

5.按照上述步骤安装Az.ResourcesCosmosDB模块。

6.运行Get-CosmosDbOffer -Context $cosmosDbContext ,你会得到如下快照。

在此处输入图片说明

有关详细信息,你可以参考这个教程,这一个

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM