Azure 机器学习 - 使用个人容器注册表

Azure Machine Learning - Use personal container registry

我尝试运行此代码从 azure-ml-cli 创建一个 ml 工作区,从另一个订阅引用现有的 azure 容器注册表:

az ml workspace create --workspace-name "test-mlws" --keyvault "<key-vault-service-id>" --container-registry "<container-registry-zervice-id>" --location westeurope

部署失败,错误代码为:

{'code': 'InternalServerError', 'message': 'Received 403 from a service request'}

我找不到任何关于它的文档,我猜这是因为我使用的容器注册表属于另一个订阅。谁知道注册表是否必须在同一订阅中?

来自https://docs.microsoft.com/en-us/azure/machine-learning/how-to-manage-workspace?tabs=python#limitations

If you want to use existing services from a different Azure subscription than the workspace, you must register the Azure Machine Learning namespace in the subscription that contains those services.

因此,为了在不同的订阅中使用 ACR,您需要在包含 ACR 的订阅中注册资源提供者 Microsoft.MachineLearningServices。有关如何查看它是否已注册以及如何注册的信息,请参阅 Azure resource providers and types 文章。

要注册资源提供者,请使用:

Register-AzResourceProvider -ProviderNamespace Microsoft.MachineLearningServices

要查看特定资源提供者的信息,请使用:

Get-AzResourceProvider -ProviderNamespace Microsoft.MachineLearningServices