考虑以下 docker-compose.yml
version: '2'
services:
serv1:
build: .
ports:
- "8080:8080"
links:
- serv2
serv2:
image: redis
ports:
- "6379:6379"
我将端口转发到主机以管理我的服务,但服务可以简单地使用默认的 docker 网络相互访问。例如,在 serv1
上运行的程序可以访问 redis:6379
并且一些 DNS 魔法将使其工作。我想将我的主机添加到这个网络,以便我可以通过它们的主机名访问容器的端口:端口。
最佳答案
您可以通过在与应用程序位于同一网络的容器中运行 dns 代理(如 dnsmasq)来完成此操作。然后将您的主机 dns 指向容器 ip,您将能够解析主机名,就像您在网络上的容器中一样。
https://github.com/hiroshi/docker-dns-proxy就是一个例子。
https://stackoverflow.com/questions/39070547/
相关文章:
android - 当 Activity 在 Android 中启动时,如何阻止 EditText
android - 如何在 Android 的 ListView 中延迟加载图像
linux - nginx/apache重定向vps上docker容器上的输出端口
docker - 对 docker 的 -i "Keep STDIN open even if no
android - 是否有唯一的 Android 设备 ID?
docker - Dockerfile 中的开发依赖项或用于生产和测试的单独 Dockerfile
android - 如何在 TextView 中水平和垂直居中文本?
android - 如何使用保存实例状态保存 Activity 状态?