4 ms·
Two years ago I went from Macbooks to Win10 laptops with WSL for my professional needs - a setup that I now actually prefer, mainly thanks to having the same pa
by m_mueller 6y ago
Two years ago I went from Macbooks to Win10 laptops with WSL for my professional needs - a setup that I now actually prefer, mainly thanks to having the same package manager as on the target server. Since a couple of weeks I’ve added an iPad Pro with pen and magic keyboard, for private use and note taking / concept drawing. I gotta say, I think Jobs’ vision has finally come true with this iteration, and more so with the next version of iOS. For private use for someone without time and/or motivation to tinker, an iPad is today all you need for 98% of use cases, and in fact it’s an improvement over PCs and Macs for those.
- simonh 6y agoWin10 and WSL is a pretty compelling setup. It's interesting that Apple said they were working with Docker to make sure MacOS on ARM is a first class host for Linux Docker containers. Right now it looks like MS has managed to steal a march on Apple in this area, but that Apple knows this and is working on it. Interesting times.
- bmikaili 6y agoMS hasn’t stolen anything. WSL is still just that, a subsystem. Not native Unix.
- nicoburns 6y ago> It's interesting that Apple said they were working with Docker to make sure MacOS on ARM is a first class host for Linux Docker containers. I wish Apple would actually natively support containers, rather than supporting containers via a linux VM.
- rjeli 6y agowhat do you mean? docker for Mac uses xhyve, which uses Hypervisor.framework aka “kvm”. wsl1 had a wine-style syscall shim but they switched to virtualization too for wsl2.
- mikeyjk 6y agoI thought docker on Mac used a virtual machine + disk resulting in slower file io? As opposed to running containers directly against the host kernel / file system like Linux.
- nicoburns 6y agoRight, and and xhyve, Hypervisor.framework, and kvm are all frameworks for creating and running virtual machines. In contrast, Docker for linux runs using a native container mechanism without using a VM at all. macOS doesn't support containers, but it could.
- lioeters 6y ago> xhyve, Hypervisor.framework, and kvm are all frameworks for creating and running virtual machines > In contrast, Docker for linux runs using a native container mechanism without using a VM at all Thanks for pointing this out. As I'm slowly getting familiar with container-based workflows and underlying technology, your statement helped clear up my confusion about the essential differences between containers and VMs. I found an informative table in Microsoft's documentation for "Containers on Windows", that compares and contrasts the two approaches: Containers vs. virtual machines - https://docs.microsoft.com/en-us/virtualization/windowscontainers/about/containers-vs-vm#containers-vs-virtual-machines-1 https://docs.microsoft.com/en-us/virtualization/windowsconta... This helped me understand how Docker for Mac using xHyve is different from Docker on Linux with native containers as a much thinner layer with a shared kernel. --- According to this article: Beating some performance into Docker for Mac - https://medium.com/homullus/beating-some-performance-into-docker-for-mac-f5d1e732032c https://medium.com/homullus/beating-some-performance-into-do... (July 2020) Aside from the container/VM architecture, a performance bottleneck of Docker for Mac is (apparently) how mounted volumes work, on the file system level. --- > macOS doesn't support containers, but it could According to a random Reddit thread (so, with a grain of salt) I found on this topic: Docker on the new Mac Big Sur - https://www.reddit.com/r/docker/comments/he0v5c/docker_on_the_new_mac_big_sur/ https://www.reddit.com/r/docker/comments/he0v5c/docker_on_th... > Using a shared kernel container (via cgroups, for example) isn't feasible with macOS because of licensing restrictions and because the Linux syscall interface isn't compatible with macOS. Which seems to imply that there's some fundamental reason why Docker for Mac must rely on VMs, that macOS is not (yet?) capable of providing containers that are as native as on Linux. They also mention how the file system on macOS has design limitations that make containers more difficult. > The net result is that performance is probably going to be near-native for light workloads, but macOS depends on other fundamental technologies like APFS which aren't designed for datacenter type workloads. --- EDIT: Aah, right, this is why a comment higher up mentioned: > Apple said they were working with Docker to make sure MacOS on ARM is a first class host for Linux Docker containers.
- xattt 6y agoI only presume this will be called Apple Orchards.