首页 > 解决方案 > 在 VM 上使用 az 安装程序 - 通过 azure powershell

问题描述

我正在尝试通过 azure VM 安装工件 - 我已通过 azure 上的 powershell 远程访问 VM,并且正在运行以下命令:

Enter-AzVm -Name <MyVM> -ResourceGroupName <MyResourceGroup> -Credential (get-credential)

当我连接到 VM 时,我正在尝试在我的本地机器上运行的下载命令:

az artifacts universal download --organization <MyOrganization> --project=<MyProject> --scope project --feed <MyFeed> --name <MyFirstPackage> --version 0.0.1 --path .

这是我在尝试下载时遇到的错误:

术语“az”未被识别为 cmdlet、函数、脚本文件或可运行程序的名称

我尝试运行命令在运行的 VM 上安装 CLI,但是在安装运行之后,我看不到az --version并出现相同的错误。任何帮助,将不胜感激。

标签: azurepowershell

解决方案


我从来没有使用Enter-AzVm过远程进入 VM 来安装 Azure CLI,似乎Enter-AzVm只是在 Azure Cloud Shell 中工作(不确定)。

我在WindowsInvoke-AzVMRunCommand VM 中通过命令成功安装了 Azure CLI ,当我使用 远程连接到 VM 后在 cloud shell 中进行测试时,它工作正常,您可以按照以下步骤操作。az --versionEnter-AzVm

1.将以下命令在本地保存为installcli.ps1文件。

Invoke-WebRequest -Uri https://aka.ms/installazurecliwindows -OutFile .\AzureCLI.msi; Start-Process msiexec.exe -Wait -ArgumentList '/I AzureCLI.msi /quiet'; rm .\AzureCLI.msi

2.在本地运行以下命令。

Invoke-AzVMRunCommand -ResourceGroupName 'groupname' -VMName 'vmname' -CommandId 'RunPowerShellScript' -ScriptPath 'C:\Users\joyw\Desktop\installcli.ps1'

在此处输入图像描述

3.命令完成后,导航到云shell,使用Enter-AzVm远程进入VM,然后运行az --version,它工作正常。

在此处输入图像描述


实际上,如果上述步骤对您不起作用,您也可以将 azure cli 命令存储为.ps1类似 的文件step 1,然后使用Invoke-AzVMRunCommand它运行它,它会起作用。


推荐阅读