A set of docker image build scripts using buildx bake
 
 
 
Go to file
Kebler Network System Administrator 94d6e720e0 refactor common init script
include sysadmin and host users, permit sysadmin to do all sudo without password
2023-01-21 22:48:30 -08:00
lib feat: add on the fly volume creating and mapping to the host including bind mounting 2023-01-21 22:47:00 -08:00
src refactor common init script 2023-01-21 22:48:30 -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