[英]Docker for Windows - container domain name cannot be resolved
我想使用docker-compose
在本地计算机上设置开发人员环境。 而且我正在尝试为我的网站分配一些预定义的域名。 它必须是一个类似于app1.myapps.test的三级域,而不仅仅是app1 。
我希望Docker使用两个属性hostname和domainname自动分配这些主机名,而不是将静态IP分配给容器并将这些IP手动添加到hosts
文件。
我的Docker撰写文件为:
version: '3'
services:
app1:
build: .
container_name: app-1
domainname: myapps.test
hostname: app1
尝试打开http://app1.myapps.test/并看到错误,告诉我DNS地址无法解析。 如果我删除属性domainname: myapps.test
那么它将正常工作,并且我能够通过主机名http:// app1 /访问我的网站。
将设置更改为(无域名)
hostname: app1.myapps.test
或者
domainname: myapps.test
hostname: app1.myapps.test
也没有帮助。
Docker DNS是否可以设置多级域以及选项domainname
如何工作? 我想念什么吗?
是的,您错过了一些内容,但是由于撰写中的名称重复
version: '3'
services:
app1:
build: .
container_name: app-1
domainname: myapps.test
hostname: app1
如果您将其更改为下面
version: '3'
services:
app1:
build: .
container_name: app-1
它仍然应该工作。 当你说
我可以通过主机名http:// app1 /访问我的网站。
那是因为它是服务的名称。 不是因为您指定了hostname: app1
。 因此,您真正需要的是网络别名。 并且由于您使用的是默认网络。 您可以使用以下内容
version: '3'
services:
app1:
build: .
container_name: app-1
hostname: app1
networks:
default:
aliases:
- app1.myapps.test
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.