我有一些makefiles,其中大部分内容应该在没有配置的情况下运行。这些makefile过去曾使用docker-machine。如何检测是否安装了docker for mac?
如果用户使用docker for mac而不是docker-machine,是否在bash中检测?
我有一些makefiles,其中大部分内容应该在没有配置的情况下运行。这些makefile过去曾使用docker-machine。如何检测是否安装了docker for mac?
如果用户使用docker for mac而不是docker-machine,是否在bash中检测?
,最好的办法是检查泊坞窗环境变量的存在:
所有这四个设置当eval $(docker-machine env)
运行并且需要与码头机一起使用时。
测试版不需要设置其中的任何一项,事实上要求您取消设置才能正常运行。
你也可以做一个检查在docker info
命令寻找“白”(泊坞窗为Mac虚拟机的名称):
docker info | grep -q moby && echo "Docker for mac beta" || echo "Not docker for mac beta"
这将是依赖于一致性然而,结果是docker info
。
我发现迄今最彻底的方法是:
[[ $(docker version --format "{{.Server.KernelVersion}}") == *-moby ]]
是啊,我在想这个问题。不过,我宁愿检查现有的“Docker for Mac” – JE42
@ JE42的积极情况,我又增加了一个检查,这更正面。 – enderland