docker-machine ls outputs: Unable to query docker version: Cannot connect to the docker engine endpoint
Apparently it’s a problem with the latest docker engine version, and you can specify an override to docker-machine via --engine-install-url
There are various versions available here: https://github.com/rancher/install-docker, and this company/repo seems to be verified by docker.
Source: https://www.digitalocean.com/community/questions/unable-to-verify-the-docker-daemon-is-listening @sithembisok
I also had the same problem with Linode so it’s probably an issue on any host. The solution comment above is quite old, so I imagine a lot of folks in the entire ecosystem are having issues. The low visibility and lack of fix on the latest version kind of struck me as odd.
Here’s my Digital Ocean command:
docker-machine create \
-d digitalocean `# driver` \
--digitalocean-access-token your-token `# ` \
--digitalocean-image ubuntu-20-04-x64 `# LTS release` \
--digitalocean-region sfo3 `# region` \
--digitalocean-backups=false `# backups` \
--engine-install-url "https://releases.rancher.com/install-docker/19.03.9.sh" `# use older docker engine; current broken ` \
default `# machine name`