36 lines
2.2 KiB
Markdown
36 lines
2.2 KiB
Markdown
# Very simple deployment of a Linux VM
|
|
|
|
<a href="https://portal.azure.com/#create/Microsoft.Template/uri/https%3A%2F%2Fraw.githubusercontent.com%2FAzure%2Fazure-quickstart-templates%2Fmaster%2F101-vm-simple-linux%2Fazuredeploy.json" target="_blank">
|
|
<img src="http://azuredeploy.net/deploybutton.png"/>
|
|
</a>
|
|
<a href="http://armviz.io/#/?load=https%3A%2F%2Fraw.githubusercontent.com%2FAzure%2Fazure-quickstart-templates%2Fmaster%2F101-vm-simple-linux%2Fazuredeploy.json" target="_blank">
|
|
<img src="http://armviz.io/visualizebutton.png"/>
|
|
</a>
|
|
|
|
This template allows you to deploy a simple Linux VM using a few different options for the Ubuntu version, using the latest patched version. This will deploy a A1 size VM in the resource group location and return the FQDN of the VM.
|
|
|
|
This template takes a minimum amount of parameters and deploys a Linux VM, using the latest patched version.
|
|
|
|
## main.tf
|
|
The `main.tf` file contains the actual resources that will be deployed. It also contains the Azure Resource Group definition and any defined variables.
|
|
|
|
## outputs.tf
|
|
This data is outputted when `terraform apply` is called, and can be queried using the `terraform output` command.
|
|
|
|
## provider.tf
|
|
Azure requires that an application is added to Azure Active Directory to generate the `client_id`, `client_secret`, and `tenant_id` needed by Terraform (`subscription_id` can be recovered from your Azure account details). Please go [here](https://www.terraform.io/docs/providers/azurerm/) for full instructions on how to create this to populate your `provider.tf` file.
|
|
|
|
## terraform.tfvars
|
|
If a `terraform.tfvars` file is present in the current directory, Terraform automatically loads it to populate variables. We don't recommend saving usernames and password to version control, but you can create a local secret variables file and use `-var-file` to load it.
|
|
|
|
## variables.tf
|
|
The `variables.tf` file contains all of the input parameters that the user can specify when deploying this Terraform template.
|
|
|
|
## .gitignore
|
|
If you are committing this template to source control, please insure that the following files are added to your `.gitignore` file.
|
|
|
|
```
|
|
terraform.tfstate*
|
|
terraform.tfvars
|
|
provider.tf*
|
|
``` |