5 ms·
Docker on macOS already has some kind of qemu based solution for running x86_64 containers on m1. Potentially this could be used as an alternative?
by WatchDog 4y ago
Docker on macOS already has some kind of qemu based solution for running x86_64 containers on m1.
Potentially this could be used as an alternative?
- zamalek 4y agoIt's QEMU emulation. It's slow. It also segfaults a lot. I am able to run a select few containers on it, but I needed to sort out native arm64 for the vast majority.
- zekica 4y agoThe main reason for segfaults is that not all syscalls (syscalls on linux are different per architecture - not even 32bit and 64bit x86 use the same) are implemented in a 100% compatible way.
- zekica 4y agoYes, this is exactly what Apple has done - created Rosetta that handles Linux ELF binaries, translates code and syscalls.
- mxey 4y agoYes, Docker on macOS can switch from qemu-user to this. It uses the same binfmt mechanism, so it should be mostly a drop-in replacement. This is only available in combination with Virtualization.framework, but Docker is already migrating from Hypervisor.framework to Virtualization.framework.