公共DNS名称

时间:2018-02-15 13:40:09

标签: azure-container-instances

根据以下链接,我应该看到我的ACI容器的公共DNS名称: https://feedback.azure.com/forums/602224-azure-container-instances/suggestions/32983720-automatically-assign-dns-name-to-instance

但是,未创建任何DNS名称。以下是我创建容器的方式:

az container create -g ex-rg --name ex-container --image docker.io/repo/example:latest -e somevar=value --ip-address public --location westus

az container show --resource-group ex-rg --name ex-container |grep ip
"ipAddress": {
  "ip": "40.112.219.202",
az container show --resource-group ex-rg --name ex-container |grep dns
"dnsNameLabel": null,```
az --version 
azure-cli (2.0.27)

我也尝试过使用terraform(使用API​​),结果相同。

如果我们无法使用DNS名称,则ACI对我们没有用处。

5 个答案:

答案 0 :(得分:2)

您需要从CLI指定dns-name-label参数才能接收。这个document可以提供帮助,下面会显示一个示例 - 请记住,您的DNS名称必须是唯一的。

az container create -g MyResourceGroup --name myalpine --image alpine:latest --ports 80 443 --dns-name-label contoso

答案 1 :(得分:1)

根据Azure Container Instances Doc

您似乎无法在CLI中实现此功能(请参阅上述文档的评论部分)

enter image description here

看起来会有一些关于如何在新的几周内实现这一目标的文档。

答案 2 :(得分:0)

您可以使用ARM模板使用此功能,但仍然无法附加自定义域+ ssl证书。有点无用:/,希望尽快更新,因为没有正确的解决方法

答案 3 :(得分:0)

一旦在ARM模板中设置了dnsNameLabel,就可以通过以下方式进行查找

az container show --resource-group ex-rg --name ex-container | grep -pattern fqdn

抓取 dns 不会显示正确的结果。

答案 4 :(得分:0)

仅对于将 docker compose 与 ACI 结合使用的人,您可以向 docker compose 文件中的任何服务添加域名属性。每次推送映像并启动实例时,Azure 都会使用该 domainname.location.azurecontainer.io 作为容器组的 FQDN。然后,您可以使用该域名及其各自的端口访问每个容器。