No docker-machine in new docker beta?

Hi all,

Small question regarding the new docker beta on Mac: Is it correct that it doesn’t use docker-machine?
If so, why not? There is already a docker-machine plugin for xhyve, which admittedly is from a third party but could be adopted/enhanced.

Asking because I’m wondering if docker-machine will be less relevant in the future and because I currently have my installed automated (brew install docker-machine docker, docker-machine create ...) and I’d like to be able to keep doing so.
Also asking because I wasn’t able to find the sources so couldn’t check myself. Are the sources available anywhere?

Hi Simon

The blog post has a few details. The goal for Docker for Mac/Windows is to have a more seamless experience that doesn’t require worrying about VMs, keeping track of docker-machine and the varying maturity and completeness of machine drivers.

You can still use docker-machine, but we recommend only using to create and manage remote development machines.

But does it at least still use docker-machine and a docker-machine plugin in the background?
Or does this basically mean we lose all automation possibilities?

No, it does not use docker-machine in the background.

We recognize that docker-machine (and the many drivers especially) are an important tool.

Could you provide more details on your use-case?

Typical use case. Create a specific local machine just to work on a single issue such as mesos. This will have different a different memory and disk configuration than the default. Perform work. Check in code. Delete machine.

The use case for this is pretty simple, anybody who’s serious about any kind of setup, be it his or her own local machine or a server, will configure this setup in an automated fashion. Not being able to do so and forcing users into a GUI only solution makes the (new) Docker tooling unfit for professional use.

I don’t know for you, but all my automation is done through NodeJS (that provides a CLI). All I had to do is to point it to the Docker engine’s socket and I was able to port my environment with one command.

How does using Node relate to installing the docker daemon CLI and VM, managing the VM, switching between Docker versions, etc?

I’m not sure how you would “switch between Docker versions” with Docker for Mac?

I’m glad you took the time to share your use case, the previous comment had little info on it.

Perhaps there’re other ways to do it, but if you need multiple Docker VMs with different versions, it seems to me that you’d be better off with VM (and docker-machine indeed)