az acr - невозможно найти репозиторий в случае множественной подписки на один аккаунт - PullRequest
0 голосов
/ 19 апреля 2019

Я использую Azure CLI v2.0.62 .

У меня есть несколько подписок - S1, S2, S3, S4 - в Azure для одной учетной записи.

Я выполняю приведенный ниже скрипт для вставки динамического значения в репозиторий:

az login
az acr build "ParentStorage" --platform windows -f Dockerfile -t ChildRepository:<dynamicValue>

Здесь ParentStorage относится к типу Storage Account, а ChileRepository относится к типу Repository.

Сначала при выполнении команды входа в систему отображается список доступных подписок. Но после выполнения команды az acr build... выдается сообщение об ошибке, как показано ниже:

Error

Ресурс с именем 'ParentStorage' и типом «Microsoft.ContainerRegistry / registries» не найден в подписка 'Visual Studio Professional (ID).

До сих пор я обнаружил, что он пытается выполнить поиск по моей подписке Visual Studio (S1). Поскольку S1 была подпиской по умолчанию, а хранилище находилось в S2. Поэтому я установил S2 в качестве подписки по умолчанию и повторил попытку , но это не сработало .

Событие, когда я пытался выполнить приведенную ниже команду, выдало ту же ошибку:

az acr show --name ParentStorage

P.S. : Я пытался войти с определенной подпиской, но не смог сделать это.

Пожалуйста, дайте мне знать, что мне здесь не хватает.

Ответы [ 2 ]

1 голос
/ 21 апреля 2019

По вашей проблеме, похоже, ваш реестр не входит в текущую подписку. Когда вы используете команду CLI az login, вы входите в систему с подпиской по умолчанию. Для вас, кажется, «Visual Studio Professional (ID)» является значением по умолчанию. Вы должны проверить, есть ли ваш реестр в текущей подписке. Если нет, вы должны установить эту подписку в качестве текущей подписки с помощью команды CLI:

az account set --subscription subscription_id

Тогда я предлагаю вам проверить, существует ли реестр снова с помощью команды CLI:

az acr show -n acr_name

Это покажет информацию вашего реестра. На этот раз вы можете построить образ с помощью команды CLI az acr build, как вы хотите.

Также вы можете установить подписку во время входа в систему с помощью параметра --subscription через команду CLI az login.

Если у вас есть еще вопросы, пожалуйста, дайте мне знать. Или, если вы считаете, что это полезно, вы можете принять это как ответ.

0 голосов
/ 25 апреля 2019

Просто добавьте дополнительную вещь, следуя ответу, приведенному в здесь

Мы можем использовать приведенную ниже команду для создания с определенным идентификатором подписки, чтобы всякий раз, когда несколько пользователей хотят выполнить эту команду со своим различным идентификатором подписки по умолчанию, им не нужно было делать другую подписку в качестве своей по умолчанию.

az acr build --subscription $SubscriptionId -r $registry --platform Windows -f Dockerfile -t XYZ:v$version obj

Надеюсь, это поможет и другим.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...