top | item 45735940

(no title)

t_sawyer | 4 months ago

Well this kinda screws me over running docker on macos. Not all images I use have an arm version.

discuss

order

mxey|4 months ago

It doesn’t say if that is going away. The message calls out another part as sticking around:

> Beyond this timeframe, we will keep a subset of Rosetta functionality aimed at supporting older unmaintained gaming titles, that rely on Intel-based frameworks.

Since the Linux version of Rosetta requires even less from the host OS, I would expect it to stay around even longer.

wmwragg|4 months ago

Yes that was my first thought as well, and as the images aren't designed to be run on a mac specifically, like a native app might be, there is no expectation for the developers to create a native apple silicon version. This is going to be a pretty major issue for a lot of developers

TimTheTinker|4 months ago

Case in point - Microsoft's SQL Server docker image, which is x86-only with no hint of ever being released as an aarch64 image.

I run that image (and a bunch of others) on my M3 dev machine in OrbStack, which I think provides the best docker and/or kubernetes container host experience on macOS.

anon7000|4 months ago

I’ve worked in DevOps and companies I’ve worked for put the effort in when M1 came out, and now local images work fine. I honestly doubt it will have a huge impact. ARM instances on AWS, for example, are much cheaper, so there’s already lots of incentive to support ARM builds of images

mxey|4 months ago

Apple Silicon is ARM64 which is supported by Linux and Docker.

swiftcoder|4 months ago

This isn't about the virtualisation support - it's about all the Mac system frameworks being available in the rosetta environment

nicce|4 months ago

The performance that makes containers usable currently depends on Rosetta on Linux as well. Removing the support makes them much less usable.

ehutch79|4 months ago

Ask the maintainers to build arm images. Realistically they should be, unless the project uses lots of x86 assembly.

jamesgeck0|4 months ago

It's not just images; any software the images pull down must also support ARM64 now as well. For example, the official Google Chrome binaries used by Puppeteer for headless browsing/scraping don't have a Linux ARM build.

tobyjsullivan|4 months ago

How does this work currently? I was under the impression that Docker for Mac already ran containers in an x86 VM. Probably outdated info, but I’m curious when that changed.

cpuguy83|4 months ago

Docker on Mac runs containers in a VM, but the VM is native the cpu architecture and takes advantage of hardware virtualization.

You can of course always use qemu inside that vm to run non-native code (eg x86 on Apple Silicon), however this is perceived as much slower than using Rosetta (instead of qemu).

ChocolateGod|4 months ago

Surely, as it is on Linux, QEMU can take over here in running the x86 images on ARM.

Is it slow? Absolutely. But you'd be insane to run it in production anyway.

coldtea|4 months ago

Wanting it to be fast is not just about "running it on production".

A test suite that becomes 10x slower is already a huge issue.

That said, it doesn't seem llike Rosetta for container use is going anywhere. Rosetta for legacy Mac applications (the macOS level layer) is.

hakube|4 months ago

Doesn't Orbstack or Colima solve this?

p0w3n3d|4 months ago

if you run x86 code without rosetta (probably using the qemu) it will work painfully slow

saagarjha|4 months ago

That won’t be going away, none of that requires any support from the host OS.

lostlogin|4 months ago

Are you running this via that travesty of a desktop app?

juancn|4 months ago

Back to the QEMU dark ages