A Docker container to make Linux-base images with Buildroot
docker build -t docker-buildroot .Start docker-buildroot container using the run script.
Few input may be parsed to perform dedicated command inside container for example entering the shell or for starting buildroot.
The container entry point is an agnostic script which read yaml instructions need for getting Buildroot ready. Input configuration such as defconfig, scripts, packages, archives should be placed inside the mount point ./materials (auto created and bond by run script).
Upon successfull build, resulting arftefacts images, rootfs, sdk and other materials output are copied on host within ./materials.
Container uses volume to keep persistent ccache, output and downloads directories.
Below describes few container entry point commands.
Launch container and login. This is handy to manually interact with buildroot (e.g. enter menuconfig, try build, edit files ...).
./run-cotnainer.sh -sBuild of a target.
A target is a platform, board or project that is defined under ./materials/target.yaml. It should have at least defconfig file but it may contain other optionnal parameters need for Buildroot.
Multiple targets can be defined in single target.yaml. Each target can be used to define sdk, images and more.
Container creates/uses volume to keep buildroot ccache, output and download directories persistent between run of containers
Volume tree:
cache/
|-- ccache-image
|-- ccache-sdk
|-- dl
`-- sdk*
*a copy of sdk is kept in volume to build image
Build a target sdk
./run-container.sh -t <target-name> -b sdkBuild a target image
./run-container.sh -t <target-name> -b image