Create the RHEL for Edge image with image builder
The RHEL for Edge Installer image pulls the commit from the running container and creates an installable boot ISO with a Kickstart file configured to use the embedded rpm-ostree commit.
-
Your build host meets the image builder system requirements.
-
You installed and set up image builder and the
composer-clitool. -
You root-user access to your build host.
-
You installed the
podmantool.
-
Start an
ostreecontainer image build by running the following command:$ BUILDID=$(sudo composer-cli compose start-ostree --ref "rhel/{op-system-version-major}/$(uname -m)/edge" <microshift_blueprint> edge-container | awk '/^Compose/ {print $2}')Replace
<microshift_blueprint>with the name of your blueprint.This command also returns the identification (ID) of the build for monitoring.
-
You can check the status of the build periodically by running the following command:
$ sudo composer-cli compose statusExample output of a running buildID Status Time Blueprint Version Type Size cc3377ec-4643-4483-b0e7-6b0ad0ae6332 RUNNING Wed Jun 7 12:26:23 2023 microshift_blueprint 0.0.1 edge-containerExample output of a completed buildID Status Time Blueprint Version Type Size cc3377ec-4643-4483-b0e7-6b0ad0ae6332 FINISHED Wed Jun 7 12:32:37 2023 microshift_blueprint 0.0.1 edge-containerYou can use the
watchcommand to monitor your build if you are familiar with how to start and stop it. -
Download the container image using the ID and get the image ready for use by running the following command:
$ sudo composer-cli compose image ${BUILDID} -
Change the ownership of the downloaded container image to the current user by running the following command:
$ sudo chown $(whoami). ${BUILDID}-container.tar -
Add read permissions for the current user to the image by running the following command:
$ sudo chmod a+r ${BUILDID}-container.tar -
Bootstrap a server on port 8085 for the
ostreecontainer image to be consumed by the ISO build by completing the following steps:-
Get the
IMAGEIDvariable result by running the following command:$ IMAGEID=$(cat < "./${BUILDID}-container.tar" | sudo podman load | grep -o -P '(?<=sha256[@:])[a-z0-9]*') -
Use the
IMAGEIDvariable result to run the Podman command step by running the following command:$ sudo podman run -d --name=minimal-microshift-server -p 8085:8080 ${IMAGEID}This command also returns the ID of the container saved in the
IMAGEIDvariable for monitoring.
-
-
Generate the installation program blueprint file by running the following command:
cat > microshift-installer.toml <<EOF name = "microshift-installer" description = "" version = "0.0.0" modules = [] groups = [] packages = [] EOF