Модуль Azure RM не работает на MACOSX Catalina

Я пытаюсь использовать модуль AzureRM и AZ в ядре Powershell на OSXCatalina, но когда я пытаюсь использовать командлет Login-AzureRmAccount или Login-AzAccount. Я получаю сообщения об ошибках, указанные ниже. Сейчас я использую Powershell версии 7

Login-AzureRmAccount: термин «Login-AzureRmAccount» не распознается как имя командлета, функции, файла сценария или работающей программы. Проверьте написание имени или, если был включен путь, убедитесь, что путь правильный, и повторите попытку.

Login-AzAccount: команда «Login-AzAccount» была обнаружена в модуле «Az.Accounts», но модуль не может быть загружен. Для получения дополнительной информации запустите «Import-Module Az.Accounts».


person Estevão França    schedule 08.03.2020    source источник


Ответы (1)


Это не проблема кода Powershell, и мы здесь, чтобы помочь ей. У вас проблема с окружающей средой, поэтому ее действительно следует переместить в SuperUser или StackExchange.

Тем не менее, поскольку вы здесь, и это связано с окружающей средой, потому что вы, возможно, не настроили его правильно / полностью, то, как это настроить и использовать, полностью задокументировано в MS Docs, MSDN и во многих других местах по всему Интернету. Быстрый поиск, скажем, с помощью 'AzureRM osx' показал бы вам такие вещи, как показано ниже. эти:

PowerShell, Azure и macOS? Совершенно верно!

С помощью Azure CLI в macOS вы можете делать интересные вещи, например настраивать новые виртуальные машины или получать на них обзор состояния. Но Azure CLI - это не PowerShell, поэтому в нем отсутствуют некоторые функции, которые я очень ценю.

Чтобы управлять Azure через PowerShell на Mac, необходимо выполнить несколько шагов:

Install PowerShell
Install .NET Core
Install the AzureRm.NetCore.Preview module

brew update
brew install openssl
ln -s /usr/local/opt/openssl/lib/libcrypto.1.0.0.dylib /usr/local/lib/
ln -s /usr/local/opt/openssl/lib/libssl.1.0.0.dylib /usr/local/lib/

После этого вы можете скачать официальный установщик .NET Core для macOS. После установки вам нужно инициализировать некоторый код. Вы можете сделать это с помощью следующих команд:

mkdir hwapp
cd hwapp
dotnet new
dotnet restore
dotnet run

Install-Package -Name AzureRM.NetCore.Preview -Source https://www.powershellgallery.com/api/v2 -ProviderName NuGet -ExcludeVersion -Destination /usr/local/microsoft/powershell/6.0.0-alpha.11/Modules

get-module -listAvailable

AzureRM PowerShell Mac OS X

Все можно решить, установив AzureRM отсюда:

Install-Package -Name AzureRM.NetCore.Preview -Source https://www.powershellgallery.com/api/v2/ -ProviderName NuGet -ExcludeVersion -Destination $home/powershell/modules

Import-Module $home/powershell/modules/AzureRM.Profile.NetCore.Preview
Import-Module $home/powershell/modules/AzureRM.Resources.NetCore.Preview
Import-Module $home/powershell/modules/AzureRM.NetCore.Preview
Login-AzureRmAccount

PS. Import-Module придется запускать повторно каждый раз при перезапуске PowerShell.

Powershell и Azure в MacOS

Ну, если не выложить в свой профиль.

person postanote    schedule 08.03.2020
comment
Не беспокойся. Если это решает ваш вариант использования, не забудьте отметить его как принятый ответ для тех, кто может столкнуться с такой потребностью. Заботиться. Просто помните каждый раз, когда вы видите это «Login-AzureRmAccount»: термин «Login-AzureRmAccount» не распознается как имя командлета, функции, файла сценария или работающей программы. Проверьте написание имени или, если был включен путь, убедитесь, что путь правильный, и повторите попытку. ', Это обычно всегда и проблема с установкой / настройкой независимо от того, какую команду вы пытаетесь использовать, независимо от версии ОС. - person postanote; 10.03.2020