Image Transcription: Meme
A photo of an opened semi-trailer unloading a cargo van, with the cargo van rear door open revealing an even smaller blue smart car inside, with each vehicle captioned as “macOS”, “Linux VM” and “Docker” respectively in decreasing font size. Onlookers in the foreground of the photo gawk as a worker opens each vehicle door, revealing a scene like that of russian dolls.
I’m a human volunteer content transcriber and you could be too!
Just need to put a JIT compiled language logo inside the blue car and caption it as “Containerise once, ship anywhere”.
Does docker really spin up a VM to run containers?
Yes, under windows and osx at least.
Is that still true? I use Linux but my coworker said docker runs natively now on the M1s but maybe he was making it up
Maybe they just meant that it runs ARM binaries instead of running on Rosetta 2.
I suspect they meant it runs natively in that it’s an aarch64 binary. It’s still running a VM under the hood because docker is really just a nice frontend to a bunch of Linux kernel features.
Docker requires the Linux kernel to work.
M1 is just worse arm. Since most people use x86_64 instead of arm, docker had to emulate that architecture and therefore had performance issues. Now you’ve got arm specific images that don’t require that hardware emulation layer, and so work a lot better.
Since that didn’t solve the Linux kernel requirement, it’s still running a VM to provide it.
Not making it up, but possibly confused. OCI containers are built on Linux-only technologies.
So that’s why it’s so memory hungry…
Try limiting it down to 2GB (there is an option in the Docker Desktop app). Before I discovered this option, the VM was normally eating 3-4GB of my memory.
On macos it does
Add a JVM just for the hell of it
A foldable bike in the trunk
We need to go deeper and put a VM in linux
But it’s Unix-like!
Uses a Linux VM for all the assignments anyway.
macOS is not unix-like, it is literally Unix.
reminds me of a russian doll
Can someone please explain me like i am 5 what is docker and containers ? How it works? Can i run anything on it ? Is it like virtualbox ?
A container is a binary blob that contains everything your application needs to run. All files, dependencies, other applications etc.
Unlike a VM which abstracts the whole OS a container abstracts only your app.
It uses path manipulation and namespaces to isolate your application so it can’t access anything outside of itself.
So essentially you have one copy of an OS rather than running multiple OS’s.
It uses way less resources than a VM.
As everything is contained in the image if it works on your machine it should work the same on any. Obviously networking and things like that can break it.
Does this count for Docker in an LXC on Proxmox as well?
Time to check out Podman.
Podman on MacOS is the same, is it not? Running a containers inside a VM?
I mean I have Debian running an Ubuntu VM running docker. It’s VMs all the way down baby
When I was in school I once used a IOS emulator running inside a docker container of MacOS running on a linux machine. It works surprisingly smoothly.










