问题
I am using Azure CLI 2.0 on a windows machine and i am trying to create a Docker VM using this Microsoft documentation:
az group deployment create --resource-group myResourceGroup \
--parameters '{"newStorageAccountName": {"value": "mystorageaccount"},
"adminUsername": {"value": "azureuser"},
"adminPassword": {"value": "P@ssw0rd!"},
"dnsNameForPublicIP": {"value": "mypublicdns"}}' \
--template-uri https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/docker-simple-on-ubuntu/azuredeploy.json
Putting everything on one line results in an "unrecognized arguments" error. Replacing the parameter single quotes by double quotes results in an "Expecting property name enclosed in double quotes" error and removing the parameters option gives an expected "Deployment template validation failed" error. What is the correct way to provide the parameter value?
回答1:
Please try this script:
az group deployment create --resource-group jason --parameters "{\"newStorageAccountName\": {\"value\": \"jasondisks321\"},\"adminUsername\": {\"value\": \"jason\"},\"adminPassword\": {\"value\": \"122130869@qq\"},\"dnsNameForPublicIP\": {\"value\": \"jasontest321\"}}" --template-uri https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/docker-simple-on-ubuntu/azuredeploy.json
It works for me.
In cli 2.0, we can use --help
to find the command help:
C:\windows\system32>az group deployment create --help
Examples
Create a deployment from a remote template file.
az group deployment create -g MyResourceGroup --template-uri
https://myresource/azuredeploy.json --parameters @myparameters.json
Create a deployment from a local template file and use parameter values in a string.
az group deployment create -g MyResourceGroup --template-file azuredeploy.json --parameters
"{\"location\": {\"value\": \"westus\"}}"
回答2:
You can add you parameters in the following format:
--parameters '{ "adminUsername": {"value":"username"}}'
回答3:
This is what i have tried with single quote('') instead of double quote ("") and it worked for me.
az group deployment create --name TempGroup --resource-group insightsrg --parameters '{\"actionGroupName\": {\"value\": \"jsonActionGroup\"},\"actionGroupShortName\": {\"value\": \"JAG\"}}' --template-file "C:\HM\ARM\policy\actiongroup\actiongroup.json"
Kindly find an attached screenshot for reference.
来源:https://stackoverflow.com/questions/43119958/azure-cli-2-how-to-provide-parameters-in-az-group-depeloyment-create-command