This project provides the ability build rootfs
file from kickstart
input file in a docker/podman container environment. Output rootfs files can be used create base images for different OSs (AlmaLinux, Cent OS, Rocky Linux) etc.
Two different variants of the image almalinux/ks2rootfs
are avilable.
Use follwing command latest
tag image to create rootfs
files for docker
and WSL
images.
docker build -t almalinux/ks2rootfs -f Dockerfile .
Use follwing command livecd-tools
tag image to create SIG/LiveMedia ISO
images, check GitHub repo.
docker build -t almalinux/ks2rootfs:livecd-tools -f Dockerfile.livecd .
Use latest
tag image to create rootfs
files for docker
and WSL
images.
Run following command under tests
folder. Test script kickstart files are available at kickstarts
. NOTE: These scripts test use only. Official docker image kickstart files are avaialble in GitHub docker-images repository.
Use command below to create default
docker files
docker run --rm --privileged -v "$PWD:/build:z" \
-e KICKSTART_FILE=kickstarts/almalinux-8-default.x86_64.ks \
-e IMAGE_NAME=almalinux-8-docker-default.x86_64.tar.gz \
-e OUTPUT_DIR=default \
-e BUILD_TYPE=default \
almalinux/ks2rootfs
Use command below to create base
docker files
docker run --rm --privileged -v "$PWD:/build:z" \
-e KICKSTART_FILE=kickstarts/almalinux-8-base.x86_64.ks \
-e IMAGE_NAME=almalinux-8-docker-base.x86_64.tar.gz \
-e OUTPUT_DIR=base \
-e BUILD_TYPE=base \
almalinux/ks2rootfs
Use command below to create init
docker files
docker run --rm --privileged -v "$PWD:/build:z" \
-e KICKSTART_FILE=kickstarts/almalinux-8-init.x86_64.ks \
-e IMAGE_NAME=almalinux-8-docker-init.x86_64.tar.gz \
-e OUTPUT_DIR=init \
-e BUILD_TYPE=init \
almalinux/ks2rootfs
Container startup script ks2rootfs
supports multiple environment varible to customize the output. The environment variables and their use as follows
ENVIRONMENT VARIABLES:
======================
KICKSTART_FILE : Reuired - Input kickstart source file (.ks)
IMAGE_NAME : Required - Rootfs output file name
BUILD_WORK_DIR : Optional - Working dir for kickstart source and image destination. Defaults to current directory.
OUTPUT_DIR : Optional - Output directory name in working directory. Ddefault value is 'result'.
FLAG_OUTOUT_IN_PWD : Optional - Set this flag to true to write output files in current working directory. Default value is 'false'. When value is set to 'true', any value passed to 'OUTPUT_DIR' will be ignored.
FLAG_WRITE_META : Optional - Generate meta data about the kickstart build system. Default value is 'true'.
FLAG_RETAIN_LOG : Optional - When enabled, generated logs files retained under 'logs' output directory. Default value is 'false'.
BUILD_COMPTYPE : Optional - Build compression type default 'xz', 'gzip' and 'lzma'.
BUILD_TYPE : Optional - Build type 'base', 'default', 'init', 'micro', 'minimal' and 'wsl', Default value is 'default'.
USAGE:
ks2rootfs KICKSTART_FILE_NAME ROOTFS_FILE_NAME
EXAMPLES:
ks2rootfs os-minimal.ks os-minimal.tar.gz
livecd-tools
tag image to create SIG/LiveMedia ISO
images, check GitHub repo for more detailed use.