我想将连接属性作为我的 arm 模板中的环境变量传递给 vm。天蓝色模板可以吗?
正如 4c74356b41 所说,模板不直接支持这一点。根据您的情况,我建议您可以使用Custom Script Extension。
自定义脚本扩展在 Azure 虚拟机上下载和执行脚本。此扩展对于部署后配置、软件安装或任何其他配置/管理任务很有用。
Azure 自定义脚本扩展支持 Linux 和 Windows,你可以编写一个脚本来配置 vm 的连接属性并使用扩展在你的 VM 上执行。自定义脚本扩展模板示例如下:
"resources": [
{
"type": "extensions",
"name": "CustomScriptExtension",
"apiVersion": "2015-06-15",
"location": "[resourceGroup().location]",
"dependsOn": [
"[variables('vmName')]"
],
"properties": {
"publisher": "Microsoft.Compute",
"type": "CustomScriptExtension",
"typeHandlerVersion": "1.8",
"autoUpgradeMinorVersion": true,
"settings": {
"fileUris": [
"[concat(parameters('_artifactsLocation'), '/', variables('ScriptFolder'), '/', variables('ScriptFileName'), parameters('_artifactsLocationSasToken'))]"
],
"commandToExecute": "[concat('powershell -ExecutionPolicy Unrestricted -File ', variables('scriptFolder'), '/', variables('scriptFileName'), ' ', variables('scriptParameters'))]"
}
}
}
]
他们可以在Git Hub上找到许多关于此扩展的示例。