The family of ARM hardware for Docker got two more children – at least!Mon, Dec 7, 2015
Today we are proud to present a guest contribution from the community. Marcel Großmann, a research assistant at the University of Bamberg, Germany, shows in a short test that the hardware family on which our ARMed Docker runs is probably much larger than we ever thought. But rather than anticipating the punch line, let’s give the word to him!
Testing Docker on new Platforms
(Marcel is now speaking)
Hello everyone! First of all, thanks to Hypriot for porting Docker to the ARM platform!
Recently, I tested their port of Docker (v 1.9.1) on two platforms different from the Raspberry Pi and HypriotOS. This time, I had a look at armbian as operating system, which ships a Linux image based on Debian Wheezy and includes the Vanilla kernel 4.2.6. As hardware I picked the Cubietruck and Lamobo R1 board. The first one, Cubietruck, has e.g. a S-ATA port to attach hard drives and an integrated WiFi and Bluetooth controller:
The second one, the Lamobo R1, is also called BananaPi R1. It comes with an integrated 5-port switch fabric and a WiFi modul.
The configuration of both devices shows for
Linux XXX 4.2.6-sunxi #1 SMP Sun Nov 29 10:33:44 CET 2015 armv7l GNU/Linux
The Debian release depicted by
lsb_release -a shows:
Distributor ID: Debian Description: Debian GNU/Linux 7.9 (wheezy) Release: 7.9 Codename: wheezy
docker-hypriot, I added the Debian package repository of Hypriot to my package manager:
curl https://packagecloud.io/gpg.key | sudo apt-key add - sudo bash -c 'cat > /etc/apt/sources.list.d/Hypriot_Schatzkiste.list' << EOF deb https://packagecloud.io/Hypriot/Schatzkiste/debian/ wheezy main EOF sudo apt-get update sudo apt-get -y install --no-install-recommends docker-hypriot sudo apt-get -y install cgroupfs-mount # Add your user to group 'Docker' so you do not need to type `sudo` before each Docker command. sudo usermod -aG docker $(whoami)
Nevertheless, Docker is not running, if your glibc version is < 2.15. Test your version with
ldd --version. To update glibc, execute these commands:
sudo bash -c 'echo "deb http://ftp.debian.org/debian sid main" >> /etc/apt/sources.list' sudo apt-get update sudo apt-get -yqq -t sid install libc6 libc6-dev libc6-dbg sudo sed -i "/sid main/s/^/#/g" /etc/sources.list sudo apt-get clean sudo apt-get update sudo reboot
After the reboot,
docker version should show a Docker 1.9.1:
Client: Version: 1.9.1 ...
In addition, check if your armbian is capable of running Docker with the
check-config.sh script provided by Docker. Execute the following lines:
wget https://raw.githubusercontent.com/docker/docker/master/contrib/check-config.sh sudo chmod +x check-config.sh ./check-config.sh
As output you should see all items in section Generally Necessary as enabled. Even many options of section Optional Features are enabled and thus available. If you wanna see my full output of the script, see these lines of code.
Now you may want to install docker-compose, docker-machine or swarm provided by the Hypriot package repository.
The ARMed Family for Docker is probably bigger than that
(Andreas & Mathias speaking again)
Many thanks, Marcel. So what’s the punch line now? Well, this test makes us believe that our Docker probably runs on all devices supported by armbian, which is a total of 19 ARM boards! See the compatibility list here. We now have it safe for two of them. Of course, we are curious who of you has one of the remaining boards at hand and could test it! So, this is our call to the community:
Who can confirm another ARM board running Docker?
Andreas, Mathias and Marcel Großmann (University of Bamberg)comments powered by Disqus