SSH not available when creating Docker Machine through Digitalocean

December 29, 2018 1.5k views
DigitalOcean Ubuntu 18.04

When running the command:

docker-machine -D create --driver=digitalocean --digitalocean-access-token=xxxxx --digitalocean-size=1gb test

I get the error:

Error creating machine: Error detecting OS: Too many retries waiting for SSH to be available. Last error: Maximum number of retries (60) exceeded

The output

Waiting for SSH to be available...
Getting to WaitForSSH function...
(blog) Calling .GetSSHHostname
(blog) Calling .GetSSHPort
(blog) Calling .GetSSHKeyPath
(blog) Calling .GetSSHKeyPath
(blog) Calling .GetSSHUsername
Using SSH client type: external
Using SSH private key: /home/myname/snap/docker/321/.docker/machine/machines/blog/id_rsa (-rw-------)
&{[-F /dev/null -o ConnectionAttempts=3 -o ConnectTimeout=10 -o ControlMaster=no -o ControlPath=none -o LogLevel=quiet -o PasswordAuthentication=no -o ServerAliveInterval=60 -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null root@xxx.xxx.xxx.xxx -o IdentitiesOnly=yes -i /home/myname/snap/docker/321/.docker/machine/machines/blog/id_rsa -p 22] /usr/bin/ssh <nil>}
About to run SSH command:
exit 0
SSH cmd err, output: fork/exec /usr/bin/ssh: permission denied:
Error getting ssh command 'exit 0' : ssh command error:
command : exit 0
err     : fork/exec /usr/bin/ssh: permission denied
output  :
1 Answer

Solved this, for any other readers...
The problem was I was using the snap version of docker-machine. To fix uninstall it using "snap remove docker". Then re-install following this guide: https://docs.docker.com/machine/install-machine/#install-machine-directly

Have another answer? Share your knowledge.