跨平台的Docker容器/虚拟机的一致主机名?
我有一个docker-compose.yml
文件启动我的应用程序服务器。 然后,我使用一些不同的工具对其进行集成/压力testing。
但是,在我的Mac上,应用程序服务器在localhost
上启动,在Windows上,它在VirtualBox VM上以192.168.99.100
启动。
我听说docker-machine ip
是一个跨平台的方式来“查找”你的Docker容器,它适用于Windows:
Craig@Work-PC MINGW64 ~ $ docker-machine ip 192.168.99.100
但在我的Mac上:
craig$ docker-machine ip Error: No machine name(s) specified and no "default" machine exists
有没有办法使用docker-machine
或其他已经build立的方法来find跨平台的容器主机名?
我的目标是在新的Mac和新的Windows环境下运行,不需要任何configuration。 我可以更新所有脚本来检查Windows与Mac(vs Unix),但是我必须在一堆不同的地方复制逻辑。
Docker机器提供了一个在你的环境中设置$DOCKER_HOST
的包装器。 所以你可以检查这个variables,如果它的定义剥离了端口号,那就是你的目标IP。 如果没有定义,你可以使用localhost
。