This is a repo that contains all the currently available Azure Resource Manager templates contributed by the community. We'll soon allow a way for these templates to be indexed on Azure.com and be discoverable from there.
To make sure your template is added to Azure.com index, please follow these guidelines. Any templates that are out of compliance will be added to the blacklist.json file and not be indexed on Azure.com
- Every template must be contained in its own folder. Name this folder something that describes what your template does
- The template file must be named azuredeploy.json
- The template folder must host the scripts that are needed for successful template execution
- The template folder must contain a metadata.json file to allow the template to be indexed on Azure.com
- Guidelines on the metadata file below
- Every parameter in the template must have the description specified using the metadata property. See the starter template is provided here on how to do this
- OPTIONAL: The folder may contain a Readme.md file for any additional information about the template
Here are the required parameters for a valid metadata.json file
{
"TemplateName": "",
"Description": "",
"ShortDescription": "",
"GithubUsername": "",
"DateUpdated": "<e.g. 2015-12-20>"
}
The metadata.json file will be validated using these rules
TemplateName
- Cannot be more than 60 characters
Description
- Cannot be more than 1000 characters
- Cannot contain HTML
ShortDescription
- Cannot be more than 200 characters
GithubUsername
- Username must be the same as the username of the author submitting the Pull Request
DateUpdated
- Must be in yyyy-mm-dd format.
- The date must not be in the future to the date of the pull request
A starter template is provided here for you to follow
You can deploy the template to Azure by clicking the "Deploy to Azure" button below next to each template.
# | Deploy to Azure | Author | Template Name | Description |
---|---|---|---|---|
1 | singhkay | VM DSC Extension IIS Server | This template allows you to deploy a VM with with a DSC extension that sets up an IIS server | |
2 | coreysa | Deploy Ubuntu Azure Dev VM | This template deploys an Ubuntu VM with the Azure Dev tools installed, which includes node. This executes a bash script pulled from GitHub. | |
3 | coreysa | Deploy from DockerHub (Simple Template) | This template allows you to deploy a Docker container from DockerHub using Compose with a very small amount of parameters (simple). | |
4 | drewm3 | Chocolatey VM | This template allows you to create a VM with an application from Chocolatey.org installed. | |
5 | coreysa | Deploy from DockerHub | This template allows you to deploy a Docker container from DockerHub using Compose. | |
6 | singhkay | VM with Chef extension | This template allows you to deploy a windows VM with Chef extension and run any recipe | |
7 | coreysa | Deploy an Ubuntu VM with an additional sudo user | The purpose of this script is to show how to execute a custom script with parameters passed throguh the template that will create an additional user with sudo access. The value of the sample is to show how to pass template parameter based input into a bash Linux script. | |
8 | paigeliu | Deploy a Percona XtraDB Cluster on CentOS or Ubuntu | This template deploys a 3-node high availability MySQL Percona XtraDB Cluster 5.6 on CentOS 6.5 or Ubuntu 12.04 LTS. | |
9 | gbowerman | Deploy LAMP app on Ubuntu | This template uses the Azure Linux CustomScript extension to deploy a LAMP application by creating an Ubuntu VM, doing a silent install of MySQL, Apache and PHP, then creating a simple PHP script. | |
10 | snallami | VM-Ubuntu - Tomcat and Open JDK installation | This template allows you to create a Ubuntu VM with OpenJDK and Tomcat. | |
11 | mahthi | Deploy an Availability Set | This template allows you to create an Availability Set in your subscription. | |
12 | mahthi | Deploy a Load Balancer with an Inbound NAT Rule | This template allows you to create a load balancer with NAT rule in your subscription. | |
13 | mahthi | Deploy 'N' Virtual Machines in a Single Click | This template allows you to deploy 'n' virtual machines in a Single Click. | |
14 | mahthi | Deploy a Virtual Network | This template allows you to deploy a Virtual Network. | |
15 | mahthi | Deploy a Simple Virtual Machine from an Image | This template allows you to deploy a Simple Virtual Machines from an Image. | |
16 | mahthi | Install Mongo DB on CentOS Virtual Machine | This template deploys Mongo DB on CentOS Virtual Machine. | |
17 | mahthi | Install Mongo DB on Ubuntu Virtual Machine | This template deploys Mongo DB on Ubuntu Virtual Machine. | |
18 | singhkay | Create a Zookeeper cluster | This template deploys a 3-node Zookeeper cluster on Ubuntu Virtual Machines. | |
19 | mahthi | Create a Network Interface in a Virtual Network and associate it with a Public IP | This template creates a simple Network Interface in a Virtual Network and attaches a Public IP Address to it. | |
20 | mahthi | Deploy a Virtual Machine with Custom Data | This template allows you to deploy a Virtual Machines by passing Custom Data to the VM. | |
21 | gbowerman | Deploy an Apache webserver on Ubuntu | This template uses the Azure Linux CustomScript extension to deploy an Apache web server. The deployment template creates an Ubuntu VM, installs Apache2 and creates a demo HTML file. | |
22 | kundanap | Bootstrap a Ubuntu VM with Chef Agent | This templates provisions a Ubuntu VM and bootstraps Chef Client on it. | |
23 | singhkay | Discover a VMs Private IP Dynamically | This templates discovers a private ip of another VM dynamically | |
24 | mahthi | Create Linux Virtual Machine and configure SSH Key | This template creates a Linux Virtual Machine and configures SSH Keys. Note: This template will be slightly modified in the coming weeks to allow SSH Keys to be passed in the standard PEM format | |
25 | mahthi | Deploy Virtual Machines across 5 regions using Template Linking | This template showcases the 'Template Linking' capability in Azure Resource Manager. This template deploys 'n' Virtual Machines across 5 regions in parallel. | |
26 | singhkay | Windows VM with custom script extension | This template creates a VM and runs a PowerShell script using the custom script extension. | |
27 | kenazk | Windows VM with Azure Diagnostics Extension | This template creates a VM and deploys the Azure Diagnostics Agent to emit performance metrics from within the VM to a Table in the Storage Account specified. | |
28 | singhkay | [101] Create a key Vault | This template creates a Key Vault | |
29 | mahthi | Deploy 2 Windows VMs under Availability Set with NAT Rules through Load balancer | This template allows you to create 2 Windows Virtual Machines in an Availability Set and configure NAT rules through a load balancer. We also use the resource loops capability to create the network interfaces and virtual machines | |
30 | kundanap | Bootstrap a Ubuntu VM with Chef Agent with Json paramters | This templates provisions a Ubuntu VM and bootstraps Chef Client on it by taking only json parameters. | |
31 | kenazk | Linux VM with Empty Data Disk | This template creates a Linux VM with a new empty data disk. | |
32 | kenazk | Windows VM with Empty Data Disk | This template creates a Windows VM with a new empty data disk. | |
33 | ypitsch | Deploy 2 Windows VMs under a load balancer and configure a LB rule | This template allows you to create 2 Windows Virtual Machines in an under a Load Balancer, configure LB rules for load balancing and NAT rules for RDP Access to each VM. We also use the resource loops capability to create the network interfaces and virtual machines. | |
34 | tomconte | Deploy a single-VM WordPress to Azure | This template deploys a complete LAMP stack, then installs and initializes WordPress.Once the deployment is finished, you need to go to http://fqdn.of.your.vm/wordpress/ to finish the configuration, create an account, and get started with WordPress. | |
35 | simongdavies | This template creates an Azure VM with AD | This template creates a new Azure VM, with a public IP address, load balancer and VNet, it configures the VM to be an AD DC for a new Forest. | |
36 | singhkay | Create a VM referencing a VNET in a different Resource Group | This template creates a VM in a VNET which is in a different Resource Group. You'll need to have the VNET created before running this template and pass the VNET name and its resource group name as input to this parameter. | |
37 | singhkay | Create a VM and install a certificate referenced from an Azure Key Vault | This template creates a VM and installs a certificate from the Azure Keyvault on the Virtual Machine. The template expects the Keyvault Name and the certificate URL of the certificate in KeyVault. | |
38 | mahthi | Execute Dependent script extensions to Configure and Install Mongo DB on a Ubuntu Virtual Machine | This template deploys Configures and Installs Mongo DB on a Ubuntu Virtual Machine in two separate scripts. This template is a sample that showcases how to express dependencies between two scripts running on the same virtual machine. | |
39 | coreysa | Deploy Docker Containers on Virtual Machines across 5 regions using Loops & Template Linking | This template allows you to create 'N' number of Virtual Machines based on the 'numberOfInstances' parameter specified during the template deployment and deploys 2 docker containers [nginx & redis] on each VM. | |
40 | mahthi | Deploy a Virtual Machine from a User Image | This template allows you to create a Virtual Machines from a User image. Prerequisite - The Storage Account with the User Image VHD should already exist in the same resource group. | |
41 | mahthi | Deploy 'n' Virtual Machines from a user image using Resource Loops | This template allows you to create 'N' number of Virtual Machines from a User image based on the 'numberOfInstances' parameter specified during the template deployment. | |
42 | mahthi | Deploy 'n' Virtual Machines from a user image across 3 storage accounts in the same region | This template allows you to create VMs from User image across 3 Storage accounts in the same region. You can also chose to specify the number of Virtual Machines that you want to spin up per storage accounts where the user image is placed [Recommended number is 40]. There are some critical pre-requisties for this template, please refer to the readme in the template folder for additional details. | |
43 | singhkay | Create 2 VMs in a Availability Set with 2 FDs without resource loops | This template allows you to create 2 VMs in an Availabiltiy Set with 2 Fault Domains without resource loops |