gpt4 book ai didi

docker - 链接 docker 容器并使用通配符子域

转载 作者:行者123 更新时间:2023-12-01 00:52:27 25 4
gpt4 key购买 nike

我有两个 docker 容器(container_one 和 container_two),一个链接到另一个 container_one >>link>> container_two。

当我使用地址从 container_one 运行 curl 命令时:http://container_two/index.php curl 命令按预期成功执行。

但是,我想引入一个通配符子域,以便我可以将任意数量的子域附加到 container_two(例如:site1.container_two、site2.container_two、*.container_two 等)。显然,从 container_one 调用 curl 命令:http://site1.container_two/index.php单独使用链接不起作用。

有谁知道使用 docker run 命令或其他方式可以做到这一点吗?

最佳答案

基本上,你不能只用 --link 来做到这一点。标志,因为 --link/etc/hosts 添加一个条目文件以促进此容器间通信,以及 /etc/hosts文件不支持通配符条目。

但是,您可以在 container_one 上设置 DNS 服务器。 ,并在该 DNS 服务器上设置通配符主机(或子域记录)以指向您的 container_two (并将所有其他请求转发到所有其他主机名的实际 DNS),然后指定 --dns=127.0.0.1在您的 docker run container_one的命令.这似乎有点hacky,但会发生什么container_one然后将使用 127.0.0.1 (localhost) 当它遇到在 /etc/hosts 中无法识别的主机名时,以及 container_one 上的 DNS将指向 container_two用于子域(以及所有其他转发到您的外部 DNS 基础设施的请求)。

您可以在 the documentation 中找到更多信息。 .祝你好运!

关于docker - 链接 docker 容器并使用通配符子域,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30292080/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com