I tried to run Docker on a virtual machine.
Host : MacBook VM : Parallels Windows 7
And error occurs:
Is it possible?
Since it doesn't virtualize components, its host OS needs to have access to the Linux kernel and other Linux components. That means you can only use Docker to run the Linux OS and not Windows or Mac OS. If you need to run Windows or OS X, you're stuck with virtualization.
To run a Docker container, you: create a new (or start an existing) Docker virtual machine. switch your environment to your new VM. use the docker client to create, load, and manage containers.
To run a Docker container, you: create a new (or start an existing) Docker virtual machine. switch your environment to your new VM. use the docker client to create, load, and manage containers.
Docker machines runs as a VirtualBox virtual machine as you're using the VirtualBox Docker Machine driver. So, it uses up your system memory (RAM). You may not want to run all the Docker machines at the same time. Instead, run only the machines you need.
If the VM is a Linux, you can do this without any problem - on Linux, the Docker is essentially a well-worked chroot. Thus, the Linux docker is not virtualization.
In the case of Windows, it is not so easy. Windows Docker internally uses Hyper-V to emulate the containers. Which means that you can only run, if you can use nested virtualization:
I tried qemu/kvm, virtualbox and vmware player. I configured them deeply and strongly, I've hacked them, I did every possible to do. Only the last worked (VMWare).
There are significant speed costs, but it may be useful for development on Linux, and then trial-test on Windows configurations.
You will need a lot of ram. At least 16G. 32G is better. A relative useful configuration would be:
Sometimes it will be a little bit buggy, but only your HyperV will crash out, your virtual Win, or your host machine won't. It is okay for testing a docker container on a Windows machine, what you've developed on a Linux. Don't create mission critical servers on this way. :-)
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With