Armbian Docker Install



Overview¶

Nov 07, 2019 A UbuntuCore and Armbian image files are ready for it. 7.9 How to install and use docker (for arm64 system) 7.9.1 How to Install Docker. Run the following.

The H3 SoC from Allwinner is meant for OTT boxes and therefore its reference design is not accompanied by a separate PMIC (power management IC) unlike A series Allwinner SoCs (like A10, A20, A64, …). No PMIC means also that there is no battery charging/monitoring implemented so H3 is not that much suited for mobile devices. On the other hand some pretty cheap H3 boards were released that can be driven with rather low consumption and therefore combining H3 devices with a battery became a real use case with boards like Orange Pi One/Lite, NanoPi NEO and Neo AIR.

As usual SoC and device information can be found in Linux-sunxi wiki. Same applies to status of mainlining kernel efforts. Adding to the usual SoC feature set (I2C, SPI, PWM, UART, SDIO, GPIO and so on) H3 has one USB OTG port, 3 real USB host ports (not exposed on all devices), Fast- and Gigabit Ethernet capablities (board specific), a Mali400MP2 GPU and Allwinner’s video encoding/decoding engine.

When CPU or GPU cores are fully utilized H3 tends to overheat over time like any other popular ARM SoC released within the last 2-3 years. With Armbian we provide sane dvfs (dynamic voltage frequency scaling) settings that help a lot with throttling. In case you plan to operate your H3 device constantly under high load please check Armbian forums first since boards behave differently (related to voltage regulation and PCB size and design – some use copper layers to spread the heat away from the SoC). Also consider applying a heatsink to the SoC (a fan should not be necessary unless you want to do number crunching on your board and then you obviously chose the wrong device).

You find some differentiation criteria regarding supported H3 devices as well as an overview/history of H3 software support in our forums or use Jean-Luc’s nice comparison table (both slightly outdated since more H3 devices have been released in the meantime).

Kernel support¶

Each supported Armbian image can be made from scratch – from latest kernel and u-boot sources, updated upstream packages and our most recent bug fixes and improvements. Supported build environment for SDK is Ubuntu Bionic 18.04 x64 but you can run it containerised virtually on any X64 based Linux distribution under Docker. In this section, we will show you how to use Docker on your Raspberry Pi 4. If you have never used Docker, this section should help you get started. To run a Docker container, you need a Docker image on which the Docker container will be based. There are thousands of Docker containers available in the Docker container registry (Docker Hub).

Almost all features of the H3 SoC are supported on Armbian’s current branch. Please refer to the Linux sunxi support sheet.

Default settings¶

  • CPU frequency settings are 480 MHz to 1.37 GHz on most boards (cpufreq governor is interactive therefore the boards only increase CPU speed and consumption when needed). Varity might occur due to different voltage regulators and heat dissipation behaviour. Theoretically lower frequencies are possible but disabled by default due to known stability issues.
  • Armbian unlike older/other H3 OS images uses the green led as ‘power on’ indicator (blinking means ‘ready to login’ or ‘shutting down’), the red led (blue on NanoPis) can be used for your own purpose.

Tips and tricks (general)¶

  • An insufficient power supply is the root cause of many weird symptoms/problems. Never trust in ratings written on the PSU since they might be wrong, the PSU might be old/dying and cable/contact resistance adds to problems. In other words: Before you blame Armbian for strange behaviour please try at least one second power supply (this applies to both PSU and cable between PSU and board if this is separate – especially USB cables really suck due to high resistance leading to severe voltage drops).
  • In case you experience instabilities check your SD card using armbianmonitor -c $HOME and think about installing RPi-Monitor for H3 to get an idea whether you suffer from overheating (sudo armbianmonitor -r will install everything needed).
  • Especially for desktop images the speed of your SD card matters. If possible try to use our nand-sata-install script to move the rootfs away from SD card. The script also works with USB disks flawlessly (some background information).

Tips and tricks (H3 specific / lowering consumption) (outdated)¶

Recent research showed that H3 boards operated as wired IoT nodes need way less power compared to Raspberry Pis in the same situation (ethernet active). If you want to use your H3 device headless (server/IoT) and care about power consumption then there exist a couple of tweaks to get your board being more energy efficient when using in the meantime unsupported 3.x kernel (no tests done yet with up-to-date legacy/current kernel):

  • Disabling HDMI/GPU saves ~200mW.
  • Allowing to temporarely only negotiate a Fast Ethernet connection on GbE capable boards saves +350 mW.
  • Adjusting DRAM clockspeed is surprisingly another way to control consumption (on NanoPi NEO for example changing DRAM clockspeed between 132 MHz and 672 MHz results in consumption differences of 470mW).
  • Limiting maximum CPU clockspeed will help with lowering maximum consumption (think about scripts running amok or something going terribly wrong), the same applies to limiting the count of active CPU cores.
  • Choosing a board with Fast instead of Gigabit Ethernet or disabling GbE on the latter using ethtool or ifconfig saves at least 150 mW (board specific).

As an example: We chose default Armbian settings for NanoPi NEO to ensure this board is not able to exceed 2W consumption when running with no peripherals connected. This resulted in CPU and DRAM clockspeed of just 480/408 MHz while booting (the first ~20 seconds). In normal operation we limit maximum CPU clockspeed to 912 MHz to stay below the 2W consumption barrier even in worst case scenarios.

In case you want to have a few more percent maximum CPU performance you would need to set maximum cpufreq to 1200 MHz instead of ‘just’ 912 MHz maximum CPU clock using our new h3consumption tool. Be warned: This will both heavily increase consumption and SoC temperature since exceeding 912 MHz CPU clockspeed means feeding the SoC with 1.3V instead of 1.1V core voltage (most smaller H3 devices use a voltage regulator only switching between two voltages to feed the SoC based on load).

Walking this route in the other direction is more interesting: In case you want to use an H3 device as IoT node you might want to limit both idle and maximum consumption. That should involve disabling stuff not needed (eg. HDMI/GPU since this saves 200mW) or limiting ressource consumption: Lowering maximum clockspeeds for both CPU and DRAM or even disabling CPU cores (which helps not with idle consumption since ARM cores enter low-power modes if not needed but can help lowering maximum consumption requirements).

Since all of this stuff is based on recent research and being still WiP please consider reading through relevant threads in Armbian forums and join development/research/discussions: SBC consumption/performance comparisons and Default settings for NanoPi NEO/Air.

Supported

Armbian Focal
mainline based kernel 5.10.y

Server or light desktop usage scenarios.
High level of software maturity

Armbian Buster
mainline based kernel 5.10.y

Server or light desktop usage scenarios.
High level of software maturity

Specifications

* Specifications differ from hardware revision, model and software support level

FAQs

We provide CLI (command line interface) images first. If the software is stable enough we add the option to upgrade to XFCE desktop. The Build-System relies on Debian and Ubuntu. The availability of different images may vary, most of the time because of driver restriction. Sometimes we provide only testing images.

All images can be built from sources at any time and in rare cases, where you can’t find an image which you need, you can build one.

Preparation

Make sure you have a good & reliable SD card and a proper power supply. Archives can be uncompressed with 7-Zip on Windows, Keka on OS X and 7z on Linux (apt-get install p7zip-full). RAW images can be written with Etcher (all OS). Where images are compressed with .xz you can wrtite them to the SD card with Etcher directly.

Boot

Insert the SD card into the slot, connect a cable to your network if possible or a display and power your board. (First) boot (with DHCP) takes up to 35 seconds with a class 10 SD Card.

Login

Log in as: root Password: 1234. Then you are prompted to change this password (US-Keyboard setting). When done, you are asked to create a normal user-account for your everyday tasks.

SUPPORTED devices are tested and they work apart from known issues and missing features. Support is provided as far as possible (in general there is no support for 3rd party hardware like DVB tuners and software like Kodi). Please check the documentation and existing forum posts before posting a question. Questions on private channels are ignored.

SUITABLE FOR TESTING (WIP) are devices which we’re currently working on but they are not ready! These images are suitable for developers and experienced users. They are not very well tested but they might work without any problems. Your help to improve this situation is greatly appreciated.

SUPPORT ENDED (EOS) status are devices which used to be supported in the past. Reasons for moving to this section:

  • no active software development (mainline u-boot and kernel)
  • no support from the vendor (hardware samples, documentation, software packages)
  • never was sold, only samples in small quantities were available
  • hardware design flaws don’t allow using these devices without stability issues

Support status:

  • images are stable but we don’t test updating,
  • images are provided with no support,
  • most images have frozen kernel and u-boot packages to prevent their upgrades.
Armbian Docker Install

NO OFFICIAL SUPPORT (CSC) are devices which are supported by the 3rd party. We usually don’t have hardware samples nor conduct any tests but they might work. There is no support whatsoever.

Each supported Armbian image can be made from scratch – from latest kernel and u-boot sources, updated upstream packages and our most recent bug fixes and improvements. Supported build environment for SDK is Ubuntu Bionic 18.04 x64 but you can run it containerised virtually on any X64 based Linux distribution under Docker. You can re-make live bootable image or just a kernel+dtb(hardware configuration) package which you transfer to your image and install with: dpkg -i linux-image-[branch]-family.deb linux-dtb-[branch]-family.deb. In that process you can enforce many customization. To the kernel or user space. Read more.

Tested 3rd party hardware

Scanner

Lide 220

4800 DPI

USB gateway

Cyrus

Z-Wave+

External enclosure

Armbian Buster Install Docker

JMS567Armbian

USB3.0

HDMI display

Waveshare 7'

1024*600 touch

HDMI display

Iiyama Prolite

1920x1080 touch

UART

CH340G

USB2.0

USB Bluetooth

CSR

USB2.0 / v4.0

USB Ethernet

AX88772A

USB 2.0 / 100Mbps

USB WiFi AC

8811au

USB2.0 / 433Mbps

USB WiFi AC

8814AU

USB3.0 / 1300Mbps

USB WiFi AC

MT7610

USB2.0 / 433Mbps

USB WiFi

RTL8188EUS

Install Docker On Armbian

USB2.0 / 150Mbps

USB WiFi AC

RTL88x2BU

USB2.0 / 867Mbps

Recommended download

Armbian Install Docker-compose

Builds were tested for booting and basic operations.
VariantEUUSAAsiaTorrentUser spaceKernelIntegrity checkSizeLast modified
Buster stable5.10.ySHAASC320MMar 9 2021
Buster minimalstable5.10.ySHAASC162MMar 9 2021
Buster xfce desktopstable5.10.ySHAASC576MMar 9 2021
Focal stable5.10.ySHAASC256MMar 9 2021
Focal minimalstable5.10.ySHAASC153MMar 9 2021
Focal xfce desktopstable5.10.ySHAASC506MMar 9 2021

Test builds

Builds were made automatically from the trunk with unknown support status. Use at your own risk!
VariantGlobalChinaTorrentUser spaceKernelIntegrity checkSizeLast modified
Hirsute n/an/aunstable5.11.9SHAASC253MMar 26 2021