通过terraform为应用服务创建自定义域

时间:2018-02-06 11:50:13

标签: azure terraform arm-template azure-app-service-envrmnt

我正在通过terraform创建azure app服务,并在此网站上提供以下文档: https://www.terraform.io/docs/providers/azurerm/r/app_service.html

以下是terraform脚本的代码段:

strlen

我的app应用服务也需要子域名,我无法在terraform中找到任何帮助:

截至目前,app服务的网址是: https://abc.azure-custom-domain.cloud

我希望我的网址是:   HTTPS://*.abc.azure-custom-domain.cloud

我知道这可以通过门户网站完成,但我们可以通过terraform以任何方式完成这项工作吗?

3 个答案:

答案 0 :(得分:1)

这是不可能的。你可以提供link。如果参数不在,则terraform不支持​​该参数。

您需要在Azure门户上执行此操作。

答案 1 :(得分:1)

现在可以使用app_service_custom_hostname_binding(自PR #1087起,自2018年4月6日起)

resource "azurerm_app_service_custom_hostname_binding" "test" {
  hostname            = "www.mywebsite.com"
  app_service_name    = "${azurerm_app_service.test.name}"
  resource_group_name = "${azurerm_resource_group.test.name}"
}

答案 2 :(得分:-1)

我有同样的问题&不得不使用PowerSHell在短期内克服它。也许你可以让Terraform触发PSHell脚本......我还没有尝试过!!!

PSHell如下: -

$fqdn="www.yourwebsite.com"
$webappname="yourwebsite.azurewebsites.net"
Set-AzureRmWebApp -Name <YourAppServiceName> -ResourceGroupName <TheResourceGroupOfYourAppService> -HostNames @($fqdn,$webappname) 

重要提示:确保为您尝试设置的自定义域配置DNS FIRST ,即CNAME或TXT记录,否则PSHell&amp;甚至Azure Portal手动方法也会失败。