This issue presented itself when attempting to provision a new instance with the following error:
Running pre-create checks...
Error with pre-create check: "default host resolves to multiple instances, please specify"
Digging deeper and I found out that where I was using the cli argument / variable 'VSPHERE_COMPUTE_IP' to specify a ESXi host to bind to, you know need to use 'VSPHERE_HOSTSYSTEM' (or as a cli argument '--vmwarevsphere_hostsystem'). As this is new documentation is fairly light as are real examples. What the documentation does provide though is two syntax examples as follows:
for cluster - VSPHERE_HOSTSYSTEM=<Cluster Name>/
for stand-alone host VSPHERE_HOSTSYSTEM=<Cluster Name>/*
Using those two syntax examples in the lab I first attempted 'VSPHERE_HOSTSYSTEM="UCS8#General Use/' but this resulted in the same error message. It was then also notable that examples were pushing to single node clusters, the test cluster I was targeting has 4 nodes.
Anyway to cut straight to it, the documentation is a little incomplete. You do need to still target a specific host in the cluster and docker-machine will not do that for you. As such in a cluster with multiple hosts the actual syntax is:
VSPHERE_HOSTSYSTEM=<Cluster Name>/<Host Name>
VSPHERE_HOSTSYSTEM="UCS8#General Use/esxrack01.vce.asc"
I guess while I am here another hint does not hurt. The other piece of lovely syntax requirements is the optional variable for targeting a specific ResourcePool, to do this you use the variable VSPHERE_POOL. The syntax for this is
VSPHERE_POOL="/<DataCentre>/host/<Cluster>/Resources/<Resource Pool>/..."
So again in our lab setup the variable looks like this:
VSPHERE_POOL="/ASC/host/UCS8#General Use/Resources/Containers"
Docker-Machine and vSphere together are a great team and well worth a play so hope this helps.
I am also fortunate with doing a bit of work with VMware's vSphere Integrated Containers (VIC) which takes these issues away and provides a very strong alternative to other scheduling/clustering services such as DOCKER SWARM within your vSphere environment but ore on that in another post later.