3 ms·
Help Test Docker CE on Raspberry Pi / ARM
- deleted 9y ago[deleted]
- drdaeman 9y agoIt's a pity Docker is still not using multi-arch official images, despite all the tech (manifest lists) is already here and seems to be working. One still has use e.g. "FROM arm32v7/alpine" instead of "FROM alpine". Without this, non-x86_64 use is somewhat painful, as one has to edit every single Dockerfile just so images can be built.
- wernerb 9y agoYou can use variables in the FROM statement (recent docker versions).
- drdaeman 9y agoI can even use manifest lists and have the same FROM for different archs: http://container-solutions.com/multi-arch-docker-images/ http://container-solutions.com/multi-arch-docker-images/ - that's what I meant saying that it's here. Just that it isn't advertised. The problem is, Docker official images (e.g. alpine, ubuntu, debian, python, node, etc) don't do this, so every Dockerfile that uses those as a base needs to be edited by hand, and you have to trust someone for unofficial base images (or build and maintain them on your own).
- alexellisuk 9y agoYou're right and I suspect it's because multi-arch isn't a business priority. The support for multi-arch is there and things are slowly moving in that direction. I'm more optimistic now than I was 2 years ago.
- praseodym 9y agoActually Docker EE has multi-arch as a selling point[1] with support for Windows and Linux on x86 and Linux on IBM Z (s390). These three options require different Docker images, so it would make sense for them to figure out a way to indicate image architecture sooner rather than later. 1: https://blog.docker.com/2017/08/docker-enterprise-edition-17-06/ https://blog.docker.com/2017/08/docker-enterprise-edition-17...
- tw04 9y agoYou're assuming they don't want to keep it out as a differentiator.
- alexellisuk 9y agoI don't think there's additional multi-arch support in EE which is not present in CE. When I say support here I mean in terms of there being a complete suite of official multi-arch images. I believe the points in this article are still relevant - https://blog.alexellis.io/5-things-docker-rpi/ https://blog.alexellis.io/5-things-docker-rpi/
- bostand 9y agoNote that you have been able to run LXD with Ubuntu Core on the pi since 16.04. Docker is a bit more efficient while LXD is more secure.
- rcarmo 9y agoAnd yet, LXD has very little mindshare (I used LXC for many years, including with Vagrant, and all my ARM machines run Xenial these days). I've had to build my own Docker daemons on several occasions when upstream failed to address some nuance of the ARM platform, and have mixed feelings (gladness/sadness) that this ticket actually exists - doing CI against Scaleway is entirely feasible, even if it doesn't cover all cases. That said, using older versions of Docker on ARM has been great - I've been using the version that ships with Xenial without any issues, and have a 16.x build working in a Swarm cluster made of Pi 2 boards.
- raesene9 9y agoOut of curiousity, I've not looked at LXD much, do you have any info. on where it's better than Docker from a security perspective?
- bostand 9y agoIIRc docker runs as root while lxd runs as a normal user. I think the Ubuntu wiki has some articles about lxd security.
- alexellisuk 9y agoQuick update It looks like a pending PR for 17.07 fixes Docker Swarm on Raspberry Pi which is great. https://github.com/alexellis/docker-arm/issues/14 https://github.com/alexellis/docker-arm/issues/14 There still needs to be thorough testing around armv6 and arm7 along with Stretch + Jessie. https://github.com/alexellis/docker-arm/labels/community-supports-docker https://github.com/alexellis/docker-arm/labels/community-sup... To track the relevant items I've labelled Issues "community-supports-docker" and also put in some note about tuning-up for building Docker on RPi.