2

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

但是,不会创建任何 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 将不会对我们有用。

4

5 回答 5

4

您需要从 CLI 中指定 dns-name-label 参数才能接收。本文档可以提供帮助,下面显示了一个示例 - 当然请记住,您的 dns 名称必须是唯一的。

az container create -g MyResourceGroup --name myalpine --image alpine:latest --ports 80 443 --dns-name-label contoso
于 2018-02-15T22:38:25.507 回答
1

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

于 2021-06-16T20:32:09.037 回答
1

根据Azure 容器实例文档

看来您还不能在 CLI 中实现这一点(请参阅上述文档的评论部分)

在此处输入图像描述

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

于 2018-02-15T20:59:56.903 回答
0

您可以使用 ARM 模板来使用它,但您仍然无法将自定义域 + ssl Cert 附加到它。有点没用:/,希望在没有适当的解决方法时尽快更新

于 2018-05-14T13:25:06.600 回答
0

在 ARM 模板中设置 dnsNameLabel 后,您可以通过以下方式查找它

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

Grepping dns不会显示正确的结果。

于 2020-11-13T11:20:51.317 回答