A set of docker image build scripts using buildx bake
 
 
 
Go to file
Kebler Network System Administrator f2c9be5c29 fix making tags
add image_tags function
refactor image_tag function
2023-01-21 22:42:36 -08:00
lib fix making tags 2023-01-21 22:42:36 -08:00
src separate package install from initialization on dockefile build 2023-01-21 22:22:41 -08:00
.gitignore fix making tags 2023-01-21 22:42:36 -08:00
Dockerfile fix: deal with no src/ directory in current directory 2023-01-21 22:41:14 -08:00
aliases convert scripts to functions and create library of secondary functions. Enable calling those directly form build script/function 2023-01-17 15:20:49 -08:00
build fix: deal with no src/ directory in current directory 2023-01-21 22:41:14 -08:00
docker-bake.hcl fix: deal with no src/ directory in current directory 2023-01-21 22:41:14 -08:00
install add install script to /opt/bin 2023-01-17 15:42:56 -08:00
readme.md convert scripts to functions and create library of secondary functions. Enable calling those directly form build script/function 2023-01-17 15:20:49 -08:00

readme.md

UCI Docker Image Builder

A build script plus associated library to facilitate building docker linux images using any of three distros (alpine,debian,ubuntu) and either architecture (amd64/arm64)

The Dockerfile is minimal, calling a set of distro specific scripts and common scripts in order to build the image

The build environment makes user of docker's "buildx bake" commands and a docker-bake.hcl file

The master branch is configured to build base images from the docker hub distro base images

The main script is "build" At the very minimum run as just ./build it will build an alpine image from the docker hub official alpine latest image with a minimal set of packages installed (e.g. git) and a custom uci shell environment.

The repo also supports (with scripts) pushing to alternate private repositories packages (like a self hosted gitea or github)

One can make decendent images in one of two way.

  1. Make your base images on the master branch then create a new branch and edit the script files in the src folder
  2. User the installer script (./install) to install to link the build script into your system path. Then clone the template branch

the build script requires an init.sh file in a source directory for the scripts it will run while building a new image by default that is <source directory>/init.sh. by default that source directory is src/ relative to the current directory