azure - 如何将自定义域名与 Azure ARM 模板部署绑定
问题描述
我正在尝试使用以下独立部署策略将多租户应用程序部署到天蓝色。
- 为 Azure 弹性池中的每个租户创建一个新数据库。
- 为每个租户创建一个新的应用服务实例。
- 使用已从 Azure 购买的域名映射应用服务实例的自定义域名(例如:tenantname.mydomain.com)
我正在尝试使用以下 ARM 模板来执行此操作(为了降低复杂性,我只提到了模板的相关区域)
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"sites_finaptestwebsite_name": {
"defaultValue": "finaptestwebsite",
"type": "String"
},
"hostNameBindings_mydomain.finapsl.com_name": {
"defaultValue": "mydomain.finapsl.com",
"type": "String"
},
"hostNameBindings_finaptestwebsite.azurewebsites.net_name": {
"defaultValue": "finaptestwebsite.azurewebsites.net",
"type": "String"
},
"sites_finaptestwebsite_serverFarmId": {
"defaultValue": "appServicePlanName",
"type": "String"
}
},
"variables": {},
"resources": [
{
"type": "Microsoft.Web/sites",
"kind": "app",
"name": "[parameters('sites_finaptestwebsite_name')]",
"apiVersion": "2016-08-01",
"location": "Central US",
"scale": null,
"properties": {
"enabled": true,
"hostNameSslStates": [
{
"name": "[concat(parameters('sites_finaptestwebsite_name'),'.azurewebsites.net')]",
"sslState": "Disabled",
"virtualIP": null,
"thumbprint": null,
"toUpdate": null,
"hostType": "Standard"
},
{
"name": "[concat(parameters('sites_finaptestwebsite_name'),'.scm.azurewebsites.net')]",
"sslState": "Disabled",
"virtualIP": null,
"thumbprint": null,
"toUpdate": null,
"hostType": "Repository"
},
{
"name": "mydomain.finapsl.com",
"sslState": "Disabled",
"virtualIP": null,
"thumbprint": null,
"toUpdate": null,
"hostType": "Standard"
}
],
"serverFarmId": "[parameters('sites_finaptestwebsite_serverFarmId')]",
"reserved": false,
"siteConfig": null,
"scmSiteAlsoStopped": false,
"hostingEnvironmentProfile": null,
"clientAffinityEnabled": true,
"clientCertEnabled": false,
"hostNamesDisabled": false,
"containerSize": 0,
"dailyMemoryTimeQuota": 0,
"cloningInfo": null
},
"dependsOn": []
},
{
"type": "Microsoft.Web/sites/hostNameBindings",
"name": "[concat(parameters('sites_finaptestwebsite_name'), '/', parameters('hostNameBindings_finaptestwebsite.azurewebsites.net_name'))]",
"apiVersion": "2016-08-01",
"location": "Central US",
"scale": null,
"properties": {
"siteName": "finaptestwebsite",
"domainId": null,
"hostNameType": "Verified"
},
"dependsOn": [
"[resourceId('Microsoft.Web/sites', parameters('sites_finaptestwebsite_name'))]"
]
},
{
"type": "Microsoft.Web/sites/hostNameBindings",
"name": "[concat(parameters('sites_finaptestwebsite_name'), '/', parameters('hostNameBindings_mydomain.finapsl.com_name'))]",
"apiVersion": "2016-08-01",
"location": "Central US",
"scale": null,
"properties": {
"siteName": "finaptestwebsite",
"domainId": null,
"azureResourceName": "finaptestwebsite",
"azureResourceType": "Website",
"customHostNameDnsRecordType": "CName",
"hostNameType": "Managed"
},
"dependsOn": [
"[resourceId('Microsoft.Web/sites', parameters('sites_finaptestwebsite_name'))]"
]
}
]
}
部署失败并出现错误“未找到从 mydomain.finapsl.com 指向 {1} 的 CNAME 记录。也未找到替代记录 awverify.mydomain.finapsl.com 到 awverify.finaptestwebsite2.azurewebsites.net。 ”
不能通过这种方式将自定义域名绑定到 azure app 服务吗?非常感谢您为解决此问题提供的帮助。我已经尝试了两天多。
解决方案
推荐阅读
- python - 如何向 Splinter Browser() 命令添加参数?
- powershell - PowerShell 模块不会在 GitHub Docker 容器操作中加载负载
- angular - 通过另一个 switchMap 和过滤器传递 switchMap 效果中的动作值?
- facebook - 在 Facebook Marketing API 中确定 AdSet 的自定义转化操作
- google-cloud-platform - 如何使用 Dialogflow Fulfillment 显示丰富的响应按钮(''芯片)?
- angular - 在网站根目录配置 karma 代理时遇到问题
- html - 如果有内容,我想不出一种方法让我的身体至少有全屏或更多?
- html - 覆盖 react-multiselect-checkboxes 样式
- aws-glue - 在没有 Glue 数据目录的情况下使用 AWS Glue 数据连接
- javascript - Moment.js 日期验证 DD-MMM-YYYY