ARM, debian, docker, linux

Building Armbian images faster using Docker

The people at the Armbian team have been doing an impressive work at optimizing and generating Debian images for many ARM boards.

While they have documentation on the build process, it focuses mostly on setting up a build environment on VirtualBox with Vagrant.

They do support building in a Docker environment, but I found the documentation lacking and I saw myself asking in the forums.

It is easier to set up Docker than virtualization, plus the containers spawn so much faster so we can better iterate and make modifications in the build.

I will just reflect here the commands to produce a fully automated build for an Odroid XU4, headless Debian Stretch image

git clone armbian-build
cd armbian-build

All the build options are here. I personally add these ones

  • CLEAN_LEVEL=””  to avoid recompiling the kernel, u-boot and the rest every build, unless they have changed.
  • NO_APT_CACHER=no to use apt-cacher-ng for faster builds.

Author: nachoparker

Humbly sharing things that I find useful [ github dockerhub ]


  1. Hi Nachoparker,

    Many thanks for the excellent work you have done on this Nexcloudpi.
    As a noobs to the Raspi and the linux environment I managed to get it working with RP3
    on a sd card even to the extent of accessing it externally (dns and port forwarding….felt
    great to be able to do this).

    My problem though started with the purchase of the WD Pi drive (WPD). Exploring and tinkering
    with a hardrive is a different proposition for us Windows users. Phew!! The upshot: trying
    to installing it on the WPD, I tried berryboot through adding os but it wasn’t recognising the usb flash
    drive (bit difficult for me right now to work out how to mount). Can there a simpler way out there??
    The only joy was installing nextcloud v11 but that’s a stepback and it’s not brilliant like your customised version. If you can get your your image addedto the Berryboot or Pinn (pinn is not noobs) that would be great as it would save so much hassle. I searched the web to see if I can manually add it
    to the Berryboot but the process seems a bit too complicated for me right now.

    1. Someone already asked for this to the Berryboot people. The best you can do is to write there supporting that they include NCP

      There’s some documentation here

      Also, keep in mind that the easiest way is to install in the SD card, and then follow the wizard. This will move your data to the USB drive, so Nextcloud runs from SD but data is on USB drive.

      1. Hi Nachoparker,

        Many thanks for your reply.
        I have added my support to the Github request.

        I will try your suggested solution soon.

  2. Hi Nachoparker,

    This was left at the bottom of my comment at Github. Does it mean that they will add it? If
    so, when can we expect the next version of Berryboot to ship?

    sunjam commented 6 hours ago
    @symbios24, it should be fine to replace the current image of Nextcloud 11.0 with the current NextcloudPi 12.0.3 image. Just please be sure to reference in the description that it is from NextcloudPi, an official Nextcloud release for Raspberry Pi 2 and 3.

    1. Hi Nachoparker,

      I am finding that the amount I can upload is limited. I have gone to additional settings to
      play with the maximum upload size but it doesn’t seem to be the case. I have even
      reinstalled using different sized sd cards (16 & 32 gbs) and also moving data to the usb
      flash drive and nothing seems to work. So it looks like I might have to start tinkering with
      line of codes. Where do I start to make such changes? The joy of Linux!!

Leave a Reply

Your email address will not be published. Required fields are marked *