-
Notifications
You must be signed in to change notification settings - Fork 171
/
Copy pathmain.tf
75 lines (64 loc) · 1.86 KB
/
main.tf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
terraform {
backend "azurerm" {
storage_account_name = "[your storage account name]"
container_name = "[your storage container name]"
key = "[your storage account key]"
resource_group_name = "[your storage account resource group name]"
}
required_version = ">= 0.13"
required_providers {
azurerm = {
source = "hashicorp/azurerm"
version = "~> 2.30"
}
}
}
provider "azurerm" {
features {}
}
resource "azurerm_resource_group" "ml" {
location = var.location
name = var.resource_group
}
resource "azurerm_app_service_plan" "appserviceplan" {
location = var.location
resource_group_name = var.resource_group
name = "mlappserviceplan"
kind = "Linux"
reserved = true
sku {
tier = "Standard"
size = "P2V2"
}
}
resource "random_string" "random" {
length = 5
special = false
upper = false
number = false
}
resource "azurerm_app_service" "dockerapp" {
location = var.location
resource_group_name = var.resource_group
name = "extraction${random_string.random.result}"
app_service_plan_id = azurerm_app_service_plan.appserviceplan.id
app_settings = {
WEBSITES_ENABLE_APP_SERVICE_STORAGE = false
WEBSITES_PORT = 5000
DOCKER_REGISTRY_SERVER_URL = var.docker_registry_url
DOCKER_REGISTRY_SERVER_USERNAME = var.docker_registry_username
DOCKER_REGISTRY_SERVER_PASSWORD = var.docker_registry_password
DEBUG = var.debug
RESOURCE_GROUP = var.resource_group
KEY = "[YourSecretKeyCanBeAnything]"
}
site_config {
linux_fx_version = "DOCKER|${var.docker_image}"
always_on = "true"
min_tls_version = 1.2
health_check_path = "/api/healthcheck"
}
identity {
type = "SystemAssigned"
}
}