-
Notifications
You must be signed in to change notification settings - Fork 18.9k
Build deb package for all Raspberry Pi's / raspbian-jessie #21895
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
This PR depends on the fix #21819 to build the deb packages. |
@StefanScherer you want us to also ship the .deb through apt.dockerproject.org for 1.11 ? |
|
@thaJeztah I have seen that the contrib/builder/deb structure has made it into 1.11 so I thought of adding the Dockerfile. So everyone can build the Docker Engine for the RPi on an ARM device without any patches Adding the deb to apt.dockerproject.org would be fantastic, but to be realistic I think this is too close to the 1.11 release. But for the long term this would help, eg. improving docker-machine binary to support "raspbian" beside the "debian" distro to also just download the ARM package from there. |
|
@StefanScherer thanks; I have no real objection against adding the Dockerfile, but let me check if that would also automatically result in it being build during the release process. I'm indeed not comfortable with shipping binaries / debs for 1.11 this soon before the release, but adding a Dockerfile so that people can build it themselves sounds ok with me |
|
@StefanScherer 👏 |
|
@tiborvass I'll add this to the 1.11 milestone; but only if we can include this without it being automatically resulting in debs to be published on apt.dockerproject.org |
I read this as "let's include it only if it makes no difference", so if you don't mind we'll just not include it and save us a cherry-pick ;-) |
|
ping @tiborvass @tianon @kencochrane PTAL! |
|
LGTM |
|
I am not sure what level of "official" release we want to give raspbian. Not that I'm against it, I just want to understand what this entails. /cc @icecrime |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this should be using an official image
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I agree, but we probably need an ARMv6 compatible base image here. The armhf/debian:jessie is for ARMv7. I'm not sure if the ENV GOARM 6 below is enough to have proper docker engine binaries for ARMv6.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
No there is no guarantee that it will work correctly, eg we link to some C libraries that might have some uses of non compatible instructions in them. I think we would need an official raspbian image.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why not armel/debian:jessie?
That one works with GOARM 6...
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@luxas Thanks for the pointer. I haven't noticed these Docker images. I'll try that.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Those should be used with GOARM 5 I think but that is one option.
In contrib/builder/deb/armhf/raspbian-jessie/Dockerfile
#21895 (comment):
@@ -0,0 +1,11 @@
+FROM resin/rpi-raspbian:jessie
Why not armel/debian:jessie?
That one works with GOARM 6...
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub
https://github.com/docker/docker/pull/21895/files/fa10270f1fd14958c3a95adc99131408cd700226#r63225616
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The build of the resin/rpi-raspbian Docker images is quite clean, small and well documented in this repo https://github.com/resin-io-library/resin-rpi-raspbian. I'd like to suggest to use these ones. The builds can be run on an Intel build server and therefore could be used for official images, too.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
+100 for an official raspbian image.
|
LGTM |
|
ping @tiborvass you wanted to have an official image; are you ok with moving this forward, or rather not? |
|
I've tested a build with Instead of investigating further how to make this work with armel, an official raspbian base image would help more people. @firecyberice has done this for us internally some time ago and we could help build such an official image. Using the resin base image still works building eg. docker 1.11.1 ( see artifacts at https://jenkins.hypriot.com/job/armhf-docker/2/ ) |
|
ping @tianon wdyt? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This now needs updating in line with arm/jessie f32ccb0#diff-0eafa589a244859aba06e5c8a1b522fc
|
Just checked with @justincormack about this - very exciting!!! Not going with armel is fine In addition to @justincormack comments (about golang): @tianon what is the process for Would love to see this merged ASAP :) |
Signed-off-by: Stefan Scherer <[email protected]>
Signed-off-by: Stefan Scherer <[email protected]>
fa10270 to
d59458c
Compare
|
Have scheduled an arm build. I would be happy to see this merged without an official raspbian image in the short term, but I do think it would be great to have an official raspbian image, and it should be pretty straightforward as it is basically the same as jessie/arm. |
|
LGTM if the arm build passes. |
|
The arm build has passed, looks good. |
|
I'm gonna LGTM this; Having official builds for rPi is a great thing to have; we may want to add some information somewhere to what extend we consider it "officially supported", and/or mention it's still early, so "here may be some dragons" |
|
🚀 Cool, now the next milestone on the way to an official ARM support is reached! |
|
Very cool! This will be an awesome 📦 . |
- What I did
Compile the Docker Engine 1.11 and build a deb package for Raspbian that is working for all eight million Raspberry Pi's, beginning with RPi 1, RPi 2, RPi 3 and should also work with RPi zero.
- How I did it
Take the
contrib/builder/armhf/debian-jessie/Dockerfilefor ARMv7 and use a Raspbian Docker image and set GOARM to 6 instead of 7 to build ARMv6 compatible binaries.- How to verify it
Run
make debon an ARM machine, this can be ARMv6 or ARMv7. This build works eg. on Scaleway C1 servers.Install it on a Raspbian LITE image:
Install it on HypriotOS for Raspberry Pi:
- A picture of a cute animal (not mandatory but encouraged)
Successful installation on a Raspberry Pi (1) Model B with Raspbian LITE SD card image from the Raspberry Pi Foundation.
Would be great if we can add this Dockerfile to the 1.11 release so we can get rid of our proprietary build steps and start using docker-engine package instead of docker-hypriot package :-)
Signed-off-by: Stefan Scherer [email protected]