链接泊坞窗容器并使用通配符子域名

我有两个docker集装箱(container_one和container_two),一个链接到另一个container_one >>链接>> container_two。

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

不过,我想介绍一个通配符子域,以便我可以将任何数量的子域附加到container_two(例如:site1.container_two,site2.container_two,* .container_two等)。 显然,从container_one: http://site1.container_two/index.php调用一个curl命令不适用于单独链接。

有没有人知道这将是可能的docker运行命令或可能以其他方式吗?

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

但是,您可以在container_one上设置DNS服务器,并在该DNS服务器上设置通配符主机(或子域logging),以指向您的container_two (并将所有其他请求转发给所有其他主机名的实际DNS)然后在--dns=127.0.0.1 docker run命令中为container_one指定--dns=127.0.0.1 。 这看起来有点不好意思,但是会发生什么呢, container_one会遇到一个在/etc/hosts中无法识别的主机名, 127.0.0.1 (localhost),而container_one上的DNS将指向container_two的子域名其他请求转发到您的外部DNS基础设施)。

你可以在文档中find更多关于这个的信息 。 祝你好运!