Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Docker is not a virtual machine #424

Open
lassipulkkinen opened this issue May 23, 2020 · 0 comments
Open

Docker is not a virtual machine #424

lassipulkkinen opened this issue May 23, 2020 · 0 comments

Comments

@lassipulkkinen
Copy link

lassipulkkinen commented May 23, 2020

The "Using Docker to cross-compile" tutorial claims the following:

Docker is a light-weight virtual machine with excellent cross-platform support.

From https://en.wikipedia.org/wiki/Docker_(software):

Docker is a set of platform as a service (PaaS) products that uses OS-level virtualization to deliver software in packages called containers. [...] All containers are run by a single operating system kernel and therefore use fewer resources than virtual machines.

This makes a comparison to virtual machines, therefore Docker itself is not a virtual machine.

The virtual machine used in the tutorial is QEMU:

Also, you will need to install qemu-user-static on your host computer, otherwise you will get an error: exec user process caused "exec format error".

qemu-user-static enables seamless execution of binaries compiled for architectures other than that of the host system. This is achieved using the binfmt-misc feature of the Linux kernel, which affects the entire system, including Docker containers. None of this is specific to Docker in any way; Docker is only used to isolate the build environment.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant