我有以下docker-compose.yml
php:
build: ./phpfpm
volumes:
- ~/works/codes:/code
web:
image: nginx:latest
ports:
- "80:80"
volumes:
- ~/works/codes:/code
- ./nginx/etc/conf.d/virtual.conf:/etc/nginx/conf.d/virtual.conf
- ./nginx/var/log/nginx:/var/log/nginx
links:
- php
我在 Web 容器中设置了 2 个虚拟主机
app.lan
api.lan
在我的php
应用程序中,我卷曲到api.lan
. 但它抛出Could not resolve host: api.lan
在我的 docker 主机中,我在文件中添加了以下/etc/hosts
内容
127.0.0.1 app.lan
127.0.0.1 api.lan
我可以从 docker 主机卷曲到api.lan
没有问题。但似乎web
容器不能从 docker 主机解析名称。
如果我找到web
容器的 ip 并将其放入 php 容器的主机文件中,如下所示。
172.18.0.5 api.lan
但是如何在 docker compose 上自动执行此操作。或任何其他最佳实践?
此外,如果我/etc/resolve.conf
对任一容器进行 cat,我可以找到以下内容。
search local
nameserver 127.0.0.11
options ndots:0
这是什么 127.0.0.11?是主机吗?
我在“Docker for mac”v 1.12.1