|
|
- {
- "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
- "contentVersion": "1.0.0.0",
- "parameters": {
- "newStorageAccountName": {
- "type": "string",
- "metadata": {
- "description": "Unique DNS Name for the Storage Account where the Virtual Machine's disks will be placed."
- }
- },
- "adminUsername": {
- "type": "string",
- "metadata": {
- "description": "Username for the Virtual Machine."
- }
- },
- "adminPassword": {
- "type": "securestring",
- "metadata": {
- "description": "Password for the Virtual Machine."
- }
- },
- "dnsNameForPublicIP": {
- "type": "string",
- "metadata": {
- "description": "Unique DNS Name for the Public IP used to access the Virtual Machine."
- }
- },
- "ubuntuOSVersion": {
- "type": "string",
- "defaultValue": "14.04.4-LTS",
- "metadata": {
- "description": "The Ubuntu version for deploying the Docker containers. This will pick a fully patched image of this given Ubuntu version. Allowed values: 14.04.4-LTS, 15.10, 16.04.0-LTS"
- },
- "allowedValues": [
- "14.04.4-LTS",
- "15.10",
- "16.04.0-LTS"
- ]
- },
- "VMName": {
- "type": "string",
- "metadata": {
- "description": "Name of VM in Azure"
- }
- }
- },
- "variables": {
- "newStorageAccountName": "[take(concat(parameters('newStorageAccountName'), uniqueString(resourceGroup().id)), 23)]",
- "dnsNameForPublicIP": "[concat(parameters('dnsNameForPublicIP'), uniqueString(resourceGroup().id))]",
- "imagePublisher": "Canonical",
- "imageOffer": "UbuntuServer",
- "OSDiskName": "osdiskfordockersimple",
- "nicName": "myVMNicD",
- "extensionName": "DockerExtension",
- "addressPrefix": "10.0.0.0/16",
- "subnetName": "Subnet",
- "subnetPrefix": "10.0.0.0/24",
- "storageAccountType": "Standard_LRS",
- "publicIPAddressName": "myPublicIPD",
- "publicIPAddressType": "Dynamic",
- "vmStorageAccountContainerName": "vhds",
- "vmName": "[parameters('VMName')]",
- "vmSize": "Standard_F1",
- "virtualNetworkName": "MyVNETD",
- "vnetID": "[resourceId('Microsoft.Network/virtualNetworks',variables('virtualNetworkName'))]",
- "subnetRef": "[concat(variables('vnetID'),'/subnets/',variables('subnetName'))]"
- },
- "resources": [
- {
- "type": "Microsoft.Storage/storageAccounts",
- "name": "[variables('newStorageAccountName')]",
- "apiVersion": "2015-05-01-preview",
- "location": "[resourceGroup().location]",
- "properties": {
- "accountType": "[variables('storageAccountType')]"
- }
- },
- {
- "apiVersion": "2015-05-01-preview",
- "type": "Microsoft.Network/publicIPAddresses",
- "name": "[variables('publicIPAddressName')]",
- "location": "[resourceGroup().location]",
- "properties": {
- "publicIPAllocationMethod": "[variables('publicIPAddressType')]",
- "dnsSettings": {
- "domainNameLabel": "[variables('dnsNameForPublicIP')]"
- }
- }
- },
- {
- "apiVersion": "2015-05-01-preview",
- "type": "Microsoft.Network/virtualNetworks",
- "name": "[variables('virtualNetworkName')]",
- "location": "[resourceGroup().location]",
- "properties": {
- "addressSpace": {
- "addressPrefixes": [
- "[variables('addressPrefix')]"
- ]
- },
- "subnets": [
- {
- "name": "[variables('subnetName')]",
- "properties": {
- "addressPrefix": "[variables('subnetPrefix')]"
- }
- }
- ]
- }
- },
- {
- "apiVersion": "2015-05-01-preview",
- "type": "Microsoft.Network/networkInterfaces",
- "name": "[variables('nicName')]",
- "location": "[resourceGroup().location]",
- "dependsOn": [
- "[concat('Microsoft.Network/publicIPAddresses/', variables('publicIPAddressName'))]",
- "[concat('Microsoft.Network/virtualNetworks/', variables('virtualNetworkName'))]"
- ],
- "properties": {
- "ipConfigurations": [
- {
- "name": "ipconfig1",
- "properties": {
- "privateIPAllocationMethod": "Dynamic",
- "publicIPAddress": {
- "id": "[resourceId('Microsoft.Network/publicIPAddresses',variables('publicIPAddressName'))]"
- },
- "subnet": {
- "id": "[variables('subnetRef')]"
- }
- }
- }
- ]
- }
- },
- {
- "apiVersion": "2015-05-01-preview",
- "type": "Microsoft.Compute/virtualMachines",
- "name": "[variables('vmName')]",
- "location": "[resourceGroup().location]",
- "dependsOn": [
- "[concat('Microsoft.Storage/storageAccounts/', variables('newStorageAccountName'))]",
- "[concat('Microsoft.Network/networkInterfaces/', variables('nicName'))]"
- ],
- "properties": {
- "hardwareProfile": {
- "vmSize": "[variables('vmSize')]"
- },
- "osProfile": {
- "computerName": "[variables('vmName')]",
- "adminUsername": "[parameters('adminUsername')]",
- "adminPassword": "[parameters('adminPassword')]"
- },
- "storageProfile": {
- "imageReference": {
- "publisher": "[variables('imagePublisher')]",
- "offer": "[variables('imageOffer')]",
- "sku": "[parameters('ubuntuOSVersion')]",
- "version": "latest"
- },
- "osDisk": {
- "name": "osdisk1",
- "vhd": {
- "uri": "[concat('http://',variables('newStorageAccountName'),'.blob.core.windows.net/',variables('vmStorageAccountContainerName'),'/',variables('OSDiskName'),'.vhd')]"
- },
- "caching": "ReadWrite",
- "createOption": "FromImage"
- }
- },
- "networkProfile": {
- "networkInterfaces": [
- {
- "id": "[resourceId('Microsoft.Network/networkInterfaces',variables('nicName'))]"
- }
- ]
- }
- }
- },
- {
- "type": "Microsoft.Compute/virtualMachines/extensions",
- "name": "[concat(variables('vmName'),'/', variables('extensionName'))]",
- "apiVersion": "2015-05-01-preview",
- "location": "[resourceGroup().location]",
- "dependsOn": [
- "[concat('Microsoft.Compute/virtualMachines/', variables('vmName'))]"
- ],
- "properties": {
- "publisher": "Microsoft.Azure.Extensions",
- "type": "DockerExtension",
- "typeHandlerVersion": "1.0",
- "autoUpgradeMinorVersion": true,
- "settings": { }
- }
- }
- ]
- }
-
|