Bin
2025-12-17 21f0498f62ada55651f4d232327e15fc47f498b1
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
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
{
  "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "parameters": {
    "hostingPlanName": {
      "type": "string",
      "minLength": 1,
      "metadata": {
        "description": "Name of the hosting plan to use in Azure."
      }
    },
    "appName": {
      "type": "string",
      "minLength": 1,
      "metadata": {
        "description": "Name of the Azure Web app to create."
      }
    },
    "skuName": {
      "type": "string",
      "defaultValue": "F1",
      "allowedValues": [
        "F1",
        "D1",
        "B1",
        "B2",
        "B3",
        "S1",
        "S2",
        "S3",
        "P1",
        "P2",
        "P3",
        "P4"
      ],
      "metadata": {
        "description": "Describes plan's pricing tier and instance size. Check details at https://azure.microsoft.com/en-us/pricing/details/app-service/"
      }
    },
    "skuCapacity": {
      "type": "int",
      "defaultValue": 1,
      "minValue": 1,
      "maxValue": 3,
      "metadata": {
        "description": "Describes plan's instance count"
      }
    },
    "location": {
      "type": "string",
      "defaultValue": "[resourceGroup().location]",
      "metadata": {
        "description": "Location for all resources."
      }
    },
    "imageTag": {
      "type": "string",
      "defaultValue": "latest"
    },
    "username": {
      "type": "string",
      "defaultValue": "username"
    },
    "password": {
      "type": "string",
      "minLength": 6
    }
  },
  "resources": [
    {
      "apiVersion": "2018-11-01",
      "name": "[parameters('hostingPlanName')]",
      "type": "Microsoft.Web/serverfarms",
      "location": "[parameters('location')]",
      "kind": "linux",
      "tags": {
        "displayName": "HostingPlan"
      },
      "sku": {
        "name": "[parameters('skuName')]",
        "capacity": "[parameters('skuCapacity')]"
      },
      "properties": {
        "name": "[parameters('hostingPlanName')]",
        "reserved": true,
        "zoneRedundant": false
      }
    },
    {
      "apiVersion": "2018-11-01",
      "name": "[parameters('appName')]",
      "type": "Microsoft.Web/sites",
      "location": "[parameters('location')]",
      "tags": {
        "[concat('hidden-related:', resourceGroup().id, '/providers/Microsoft.Web/serverfarms/', parameters('hostingPlanName'))]": "Resource",
        "displayName": "Website"
      },
      "dependsOn": [
        "[concat('Microsoft.Web/serverfarms/', parameters('hostingPlanName'))]"
      ],
      "properties": {
        "name": "[parameters('appName')]",
        "serverFarmId": "[resourceId('Microsoft.Web/serverfarms', parameters('hostingPlanName'))]",
        "siteConfig": {
          "appSettings": [
            {
              "name": "DOCKER_REGISTRY_SERVER_URL",
              "value": "https://index.docker.io"
            },
            {
              "name": "DOCKER_REGISTRY_SERVER_USERNAME",
              "value": ""
            },
            {
              "name": "DOCKER_REGISTRY_SERVER_PASSWORD",
              "value": null
            },
            {
              "name": "WEBSITES_ENABLE_APP_SERVICE_STORAGE",
              "value": "false"
            },
            {
              "name": "DISABLE_SIGNUP_WITHOUT_LINK",
              "value": "0"
            },
            {
              "name": "LABEL_STUDIO_ONE_CLICK_DEPLOY",
              "value": "1"
            }
          ],
          "linuxFxVersion": "[concat('DOCKER|heartexlabs/label-studio:', parameters('imageTag'))]",
          "appCommandLine": "[concat('label-studio --username ', parameters('username'), ' --password ', parameters('password'))]"
        },
        "clientAffinityEnabled": false
      }
    }
  ]
}