Live data from Hacker News

Docker fails to launch on Apple Silicon

github.com

211–220 of 281 posts

Re: Docker fails to launch on Apple Silicon

#211
post #148

Earlier quoted context omitted.

I switched off Mac years ago. My servers run Linux. Not bsd. Having to deal with this sort of stuff is just a waste of time. Mac's don't have a monopoly on quality, haven't for a long time. And since it's a usual response, anyone claiming Linux is too fiddly haven't used it in a long time. And while it can be if you want to roll your own DE its completely optional. Using something like fedora you can literally do alm…

I moved to Linux last month. I currently run Windows, Linux and MacOS VM on my machine. From being a Windows guy through all the years, I've found myself increasingly using Linux in this span of time. The only thing preventing me from a complete switch is MS Office. I barely used MacOS, except to diagnose issues on MacOS and run XCode.

I moved to Linux in early 2019 and was surprised that I barely needed Windows anymore. I was already using Libre Office so Ms Office wasn't a sticking point for me. I assume you tried Libre office and its probably not compatible enough for you.

Ms Office is very compatible with Wine - even the newer ones. The only problems seem to be with apps were direct replacements like Skype or are irrelevant like OneDrive.

For setting up wine and managing my apps I use Lutris. It is meant for games but is brilliant for setting up windows apps as well. I wish they would acknowledge that fact in their UI but it doesn't bother me too much that everything is called a game.

Re: Docker fails to launch on Apple Silicon

#212

Earlier quoted context omitted.

Largely depends on what kind of software developer you are. Not all developers rely on x86. Our app is React/ Typescript and we don't use Docker/ x86 virtualization at all. I do need MySQL and a few other tools, but I don't expect they will be long coming (or maybe already running in Homebrew is there Homebrew ARM?) If you make your living writing Mac or iOS software, this is a gift. Might be worth waiting for the ne…

> is there Homebrew ARM? There is but it’s highly experimental still, with 50 % of formulae not working yet. Better to run Homebrew with Rosetta for now.

In my experience it's always python and/or ruby that's causing the failues. As soon as they are fixed, most formulae will compile just fine.

Re: Docker fails to launch on Apple Silicon

#213

Apple can keep their silicon - and their shitty OCSP security checks. As the Apple laptops / iMacs die or become obsolete in my house, they'll being replaced by PCs. Let's not pretend that this is some pro-consumer move. I would actively avoid implementing Docker on Apple Silicon, at some point Apple will close the macOS ecosystem and you won't be able to use Docker anyhow.

If silicon flops I wonder how long they will drag it out before converting back?

Re: Docker fails to launch on Apple Silicon

#214

This link is a little confusing because the top comment and much of the conversation is talking about the DTK which was based on the much older A12X CPU and not the M1. As far as I can tell, the M1 does have virtualization support, Docker just isn't ported yet. Update: Also, from Apple docs it seems like you won't be able to run emulation and virtualization in the same process. So you can run x86 Mac apps, but it's l…

In this case the whole Docker universe needs to be ported, including gazillion packages? I am glad if most of the datascience packages compile successfully on x86. Much fun it seems.

Re: Docker fails to launch on Apple Silicon

#215
post #175

Earlier quoted context omitted.

Why not just run the ARM images instead of the x64? Granted not everyone makes ARM images, but in a year or so I fully expect that all serious Docker images will have ARM support (not because of Mac, but rather because of ARM’s progress in the server space). And in the meanwhile, building the image yourself isn’t that hard.

Why would your employer pay you to build and test ARM images when the server they're running on is AMD64? Okay, let's be realistic: they'll probably never find out. But still this is wasted effort when you could just as well use a regular x86 machine for development. Cross compilation will lead to many small problems that add up over time...

They would do it so their developers can use Macbooks.

Re: Docker fails to launch on Apple Silicon

#216
post #155

Earlier quoted context omitted.

I naively assumed, until today, that the whole point of using linux in docker was that you get the multi-arch goodness of linux for free!

Not at all. Docker on a raspberry pi is a massive pain in the ass. Half the images are not compiled for ARM.

Not a bit deal. Building ARM images from Dockerfiles is trivial. And it has the benefit of not having to trust an upstream image content. If you want to go the extra mile, contribute to the project to provide multi arch images support.

Re: Docker fails to launch on Apple Silicon

#217
post #33

Is it going to be interesting to see how new Apple machines running ARM based processors plays out. Writing code, and building docker images locally on ARM and building and running the same code on X86 in production could potentially, in some circumstances cause some issues. If not, it's a bit of a pain to potentially build and publish x86 and ARM images so that people can run them anywhere (Some projects are already…

If you are developing on Apple silicon, the path of least resistance is to deploy to AWS Graviton2 instances, even if the instance cpu/memory/io combination isn't perfect fit for your usecase.

Re: Docker fails to launch on Apple Silicon

#218

I really don't understand why is this fuss. TBH docker-on-mac is not that good. That is why I've most minimal config and just using to have some 'linux' time to time. What I use is `docker context` command or DOCKER_HOST=ssh://user@host pattern. env-var is more convenient for 'ephemeral' hosts. (It uses your own SSH-key to connect to host) And for static hosts (like staging machines) I use context. Plus it uses nativ…

If you want a solution for syncing local dev files to a remote host I would encourage you to try mutagen. It works very well, even inside containers.

Re: Docker fails to launch on Apple Silicon

#219
post #212

Earlier quoted context omitted.

> is there Homebrew ARM? There is but it’s highly experimental still, with 50 % of formulae not working yet. Better to run Homebrew with Rosetta for now.

In my experience it's always python and/or ruby that's causing the failues. As soon as they are fixed, most formulae will compile just fine.

One of the formula not working in Homebrew’s core functionality is the gcc compiler, which they expect might be ready by mid-2021. Another is Go, which iirc they’re expecting will begin working around January. Rust and Erlang aren’t ready, MySQL doesn’t even get past the build phase, and Python is only partially working.

You can track progress here. Be advised that packages listed as ‘check again when XYZ is fixed’ may themselves have issues that can’t yet be discovered.

https://github.com/Homebrew/brew/issues/7857

Re: Docker fails to launch on Apple Silicon

#220

This link is a little confusing because the top comment and much of the conversation is talking about the DTK which was based on the much older A12X CPU and not the M1. As far as I can tell, the M1 does have virtualization support, Docker just isn't ported yet. Update: Also, from Apple docs it seems like you won't be able to run emulation and virtualization in the same process. So you can run x86 Mac apps, but it's l…

Right, lots of confusion in this thread. A12Z/DTK: HW does not support virtualization at all. Apple M1 / New Apple Products: HW does support virtualization for ARM64 guests (both windows and linux demonstrated). What about x86 software in the guestOS? Not with Rosetta. Instead, the guest OS will have to provide its own translation (such as windows/arm's current x86->arm64 or upcoming x86_64->arm64 feature). I'm not f…

All of this already works on Windows in the other direction:

PS C:\Users\hokaa> docker run -it --platform aarch64 ubuntu root@aaf35d3fd9de:/# uname -a Linux aaf35d3fd9de 4.19.128-microsoft-standard #1 SMP Tue Jun 23 12:58:10 UTC 2020 aarch64 aarch64 aarch64 GNU/Linux

And yes, AFAIK it uses qemu's binary translation.

Post reply on HN