Raspbian Image with Docker 1.5.0 Released for Raspberry Pi Boards

DockerI’ve read quite a few articles mentioning Docker recently, but never really looked into it. So what is Docker? The developers describe it as:

Docker is an open platform for developers and sysadmins to build, ship, and run distributed applications. Consisting of Docker Engine, a portable, lightweight runtime and packaging tool, and Docker Hub, a cloud service for sharing applications and automating workflows, Docker enables apps to be quickly assembled from components and eliminates the friction between development, QA, and production environments. As a result, IT can ship faster and run the same app, unchanged, on laptops, data center VMs, and any cloud.

In practice, it looks like a lightweight virtualization solution that facilitates apps distribution to different operating systems and hardware platforms. For example, if your development machine is running Ubuntu 14.04 and you’ve developed an app requiring Python 3.0, Docker should make it a breeze to it on a Red Hat server running Python 2.6 using a pre-built Linux container.

A good way to get started is probably to go through the 10-minute tutorial on Docker website, and another is to checkout the Docker articles on ODROID Magazine January and February 2015 editions explaining how to install and get started with docker (Jan), and how to install pre-built images such as Ubuntu, Arch Linux ARM, Debian, etc.. and configure DLNA, CUPS (printer), and so on.

Raspberry_Pi_DockerThat’s it for a short introduction about docker. Hypriot, a small team of ARM developers, has released a modified Raspbian image with Docker 1.5 which adds  support for IPv6, read-only containers and advanced statistics. The image includes the following key features:

  • Compatible with all Raspberry Pi B, Pi B+, Pi 2
  • Based upon Raspberry Wheezy
  • Latest Linux kernel 3.18.8configured for optimal Docker use
  • Support for BTRF and Overlay filesystems
  • Includes Docker 1.5.0 (with activated high speed OverlayFS)
  • 347MB download sise
  • Works with 1GB or greater SD card with automatic partition resize on first boot
  • Some ARM Docker Base Images for the RPi (Node.js, io.js, Python, Java) are available on DockerHub and all source code is available on GitHub (OpenSource with MIT license)

You can download the Docker-Pi Image (hypriot-rpi-20150301-140537.img.zip), and flash it to a SD card just like any other OS for the R-Pi boards with Win32DiskImager, dd, or other tools. The default username/password are  pi/raspberry and root/hypriot.

If you don’t have a Raspberry Pi, the instructions provided in ODROID magazine could certainly be adapted to other boards, but in case you own a BeagleBone Black, there’s also a short Docker tutorial on Element14.

Support CNX Software - Donate via PayPal or become a Patron on Patreon

10
Leave a Reply

avatar
10 Comment threads
0 Thread replies
0 Followers
 
Most reacted comment
Hottest comment thread
8 Comment authors
cnxsoftMarkFirst experiments with Docker | Dough, mud and penguinsAdamzoobab Recent comment authors
  Subscribe  
newest oldest most voted
Notify of
Peter den Haan
Guest
Peter den Haan

Another Raspberry Pi OS with excellent Docker support is Arch Linux. I’ve been using Arch+Docker on the RPi (and Odroid-C1) for a little while and it works very well indeed. The Pi’s support for the aufs filesystem out of the box is a real boon. What Docker on ARM still seems to lack, though, is a comprehensive set of standardised Docker images: I generally find myself building my own. I suppose it’s a consequence of the ARM world being more fragmented than x86.

suvir
Guest
suvir

how is the performance/cpu usage when running apps inside docker on odroid-c1/rp/rp2?

Dieter Reuter
Guest

@Peter den Haan
The problem with Arch Linux is, it’s something different to Raspbian, and not every user would like to learn another OS. And to get Docker running, it takes a while – maybe hours. With a complete predefined SD card image here from Hypriot, it just takes 2-3 minutes to flash a new SD card, boot it up, login, and instantly use Docker. Until now, it was really a time consuming and frustrating task to install Docker on a RPi. After removing these major painpoints to get Docker running on the Raspberry Pi – now it just takes minutes – we expect a lot more users to step into Docker on ARM devices. And now you can find more and more ARM Docker Images on the DockerHub.
Just try it out and share your feedback, please.

Dieter Reuter
Guest

@suvir
A Docker Container starts in about 1 second on the RPi 2 and in 1-2 seconds on an older model B/B+. In my own experience I’d like to say, there no major performance difference when you’re running an app inside of Docker. It’s just a single process which runs natively on the same kernel. The big difference is how easy to install and run an application with the help of Docker – there is nothing to install just call a “docker pull” and a “docker run” and your app is running on your RPi, and if you’d like to get rid of it, just remove the Docker Image and the Container, that’s all.

Sander
Guest
Sander

“In practice, it looks like a lightweight virtualization solution that facilitates apps distribution to different operating systems and hardware platforms.”

No, not true; a docker image is constrained to one operating system (at the moment only Linux, as far as I know) and one hardware platform (for example x86_64, or x86_32, or ARMv7).

So a docker image for Raspi (ARMv6) won’t run on a docker server on x86.

The only portability is that a docker image is not constrained to a certain Linux distribution; you can run a X86_64 docker image on Ubuntu x86_64 and SuSE x86_64 and Fedora x96_64.

zoobab
Guest

You could also emulate the pi by using docker spawning qemu.
There are howtos on how to make this.

Adam
Guest
Adam

Would be great if there was a list of the other things that were done to the Raspbian image. There is a clearly quite a few other customizations that they made vs the stock image, everything from networking to basic things like prompts and default paths.

trackback

[…] http://www.cnx-software.com/2015/03/04/raspbian-image-with-docker-1-5-0-released-for-raspberry-pi-bo… – Debian image with Docker, but not enough space on root to install MySQL […]

Mark
Guest
Mark

Docker is currently on v1.7.1 and there have been several major changes since version 1.5 so would it be possible to host an updated image please?