4 ms·
This is ridiculous. Your code will just have to support multiple architectures, which is very easy with modern languages and tooling.
by lachlan-sneff 6y ago
This is ridiculous. Your code will just have to support multiple architectures, which is very easy with modern languages and tooling.
- maxmcd 6y agoYeah, ARM is coming and docker will move to support it. We already have this: https://docs.docker.com/buildx/working-with-buildx/ https://docs.docker.com/buildx/working-with-buildx/ Things like the pinebook pro (and hopefully more linux ARM devices) will keep pushing this further.
- henryfjordan 6y agoDocker came to the ARM-based raspberry pi in 2016: https://www.raspberrypi.org/blog/docker-comes-to-raspberry-pi/ https://www.raspberrypi.org/blog/docker-comes-to-raspberry-p...
- buildbot 6y agoI know of several in production embedded devices running docker, and have worked on a few...It's already here and works great.
- Spivak 6y agoI mean the post is technically right. You're probably better of skipping the first generation of ARM Macs until software support happens unless you're someone who wants to work on that software support.
- jnwatson 6y agoHardly. You’re investing a great deal of effort in building a parallel set of images that probably will never see production. The one use case when this might be viable is targeting AWS Graviton2. Does anybody know if you can run an emulated Graviton2 on ARM Mac?
- my123 6y agoParallels on Arm macOS simulates the Snapdragon 835 SoC to emulated operating systems.
- bobalob_wtf 6y agoI think you missed the point. What about all the dependencies of your code that are only compiled for x86_64? The article isn't talking about native apps on the laptop, it's about apps that run on a server but that you are developing locally. You can't run your x86 docker image on your ARM mac without emulation. You can't run your x86 Windows VM without emulation etc. Of course there are solutions like using a remote server or a VM in the cloud, but if you're buying a decent machine then you would normally expect to be able to run these things locally.
- acdha 6y agoDo you have any examples of this? The last time I tried an AWS ARM server, it was literally no modification other than changing the server type — Linux has run on ARM for many years and Apple is far from the first company to use the platform. For example, back in 2017 Cloudflare was basically looking at this as a question of which hardware ran most cost-effectively rather than having engineering heroics first: https://blog.cloudflare.com/arm-takes-wing/ https://blog.cloudflare.com/arm-takes-wing/
- user5994461 6y agoI want to say Oracle database clients as an example. My company definitely had problems to get database drivers to work generally speaking and on both 32 bits and 64 bits. Have a look at postgres, oracle, cassandra, redis, sybase to name a few, I am not sure which one was worse, it wasn't me doing the work. But I've seen some of the C and C++ dependencies that needed to compile with the errors that happened and that was horrendous.
- jbverschoor 6y agoThat’s a good moment to make your c/c++ code more robust, and cross-platform, like the languages they are
- user5994461 6y agoThe problem wasn't in our code, it was in the database code that was either from open source or from a vendor. If you want a sample. Try to install the cassandra client library in python. It will pull in and compile all sort of shit. That's supposed to be python and easily cross platform.
- heavyset_go 6y agoThere are very few packages compiled for ARM on PyPI, and there are more than a few packages on PyPI that are a pain to build from source.