Building for a Raspberry Pi

The build does not need to be done on the Pi.

To do so, go to tests/ and call ./build_arm.sh, it will build all necessary images for arm.

To push the locally built images to a remote server, run ./deploy_to_pi.sh. Docker 18.09+ is needed to use -H ssh://<user>@<host>.

Adjustments

build_arm.sh uses some variables passed as build-arg to docker-compose:

  • ALPINE_VER: version of ALPINE to use

  • DISTRO: is the main distro used. Dockerfiles are set on Alpine 3.10, and build script overrides for balenalib/rpi-alpine:3.10

  • QEMU: Used by webmails dockerfiles. It will add qemu-arm-static only if QEMU is set to arm

  • ARCH: Architecture to use for admin, and webmails as their images are available for those architectures.