Rails, Docker: Host does not exist: “default”

2019-03-08 03:39发布

问题:

When I try to run docker-machine start default , I get Host does not exist: "default", I tried eval "$(docker-machine env default)", but still getting the same message. Where is the error ?

回答1:

Try simply to check what machine has been created (docker-machine ls):

docker-machine ls

Then you can pick one and try your commands with it.

If there is none, you can create one first (docker-machine create).
In the case of the OP:

docker-machine create default

Since the error message was:

Cannot connect to the Docker daemon. Is the docker daemon running on this host?

One of the answers of "Docker command can't connect to docker daemon" should work:

sudo service docker restart


回答2:

you may try:

docker-machine create -d virtualbox default

UPDATE 2016/10/19

The old answer may only work on mac with virtualbox installed.

If you are running docker-machine on windows, you should use Hyper-V :

docker-machine create --driver hyperv vm

see detail here:https://docs.docker.com/machine/drivers/hyper-v/

And if you are using Docker Machine to provision hosts on cloud providers, you may need other driver such as amazonec2 . More detail:https://docs.docker.com/machine/get-started-cloud/



回答3:

Sometimes, docker-machine start default might misbehave and require you to rerun the command again. In that case, running eval "$(docker-machine env default)" will bring back joy :)