Chapter 5. Creating system images using the image builder web console interface
Image builder is a tool for creating custom system images. To control image builder and create your custom system images, you can use the web console interface. Note that the command-line interface is the currently preferred alternative, because it offers more features.
5.1. Accessing the image builder dashboard in the RHEL web console
With the cockpit-composer plugin for the RHEL web console, you can manage image builder blueprints and composes using a graphical interface.
Prerequisites
- You must have root access to the system.
- You installed image builder.
Procedure
Open
https://localhost:9090/
in a web browser on the system where image builder is installed.For more information about how to remotely access image builder, see Managing systems using the RHEL web console document.
- Log in to the web console as the root user.
To display the image builder controls, click the
image builder
icon, in the upper-left corner of the window.The image builder dashabord opens, listing existing blueprints, if any.
Additional resources
5.2. Creating an image builder blueprint in the web console interface
Creating a blueprint is a necessary step before creating the customized RHEL system image. All the customizations are optional.
These blueprint customizations are available for Red Hat Enterprise Linux 9.2 or later versions and Red Hat Enterprise Linux 8.8 or later versions.
Prerequisites
- You have opened the image builder app from the web console in a browser. See Accessing the image builder GUI in the RHEL web console.
Procedure
Click Create Blueprint in the upper-right corner.
A dialog wizard with fields for the blueprint name and description opens.
On the
Details
page:- Enter the name of the blueprint and, optionally, its description. Click Next.
Optional: In the
Packages
page:On the
Available packages
search, enter the package name and click the > button to move it to the Chosen packages field. Search and include as many packages as you want. Click Next.NoteThese customizations are all optional unless otherwise specified.
-
On the
Kernel
page, enter a kernel name and the command-line arguments. On the
File system
page, you can selectUse automatic partitioning
orManually configure partitions
for your image file system. For manually configuring the partitions, complete the following steps:Click the Manually configure partitions button.
The
Configure partitions
section opens, showing the configuration based on Red Hat standards and security guides.From the dropdown menu, provide details to configure the partitions:
For the
Mount point
field, select one of the following mount point type options:-
/
- the root mount point -
/var
-
/home
-
/opt
-
/srv
-
/usr
-
/app
-
/data
-
/tmp
/usr/local
You can also add an additional path to the
Mount point
, such as/tmp
. For example:/var
as a prefix and/tmp
as an additional path results in/var/tmp
.NoteDepending on the Mount point type you choose, the file system type changes to
xfs
, and so on.
-
For the
Minimum size partition
field of the file system, enter the desired minimum partition size. In the Minimum size dropdown menu, you can use common size units such asGiB
,MiB
, orKiB
. The default unit isGiB
.NoteMinimum size
means that the image builder can still increase the partition sizes, in case they are too small to create a working image.
To add more partitions, click the Add partition button. If you see the following error message: “Duplicate partitions: Only one partition at each mount point can be created.”, you can:
- Click the Remove button to remove the duplicated partition.
- Choose a new mount point for the partition you want to create.
- After you finish the partitioning configuration, click Next.
On the
Services
page, you can enable or disable services:- Enter the service names you want to enable or disable, separating them by a comma, by space, or by pressing the Enter key. Click Next.
On the
Firewall
page, set up your firewall setting:-
Enter the
Ports
, and the firewall services you want to enable or disable. - Click the Add zone button to manage your firewall rules for each zone independently. Click Next.
-
Enter the
On the
Users
page, add a users by following the steps:- Click Add user.
-
Enter a
Username
, apassword
, and aSSH key
. You can also mark the user as a privileged user, by clicking theServer administrator
checkbox. Click Next.
On the
Groups
page, add groups by completing the following steps:Click the Add groups button:
-
Enter a
Group name
and aGroup ID
. You can add more groups. Click Next.
-
Enter a
On the
SSH keys
page, add a key:Click the Add key button.
- Enter the SSH key.
-
Enter a
User
. Click Next.
On the
Timezone
page, set your timezone settings:On the
Timezone
field, enter the timezone you want to add to your system image. For example, add the following timezone format: "US/Eastern".If you do not set a timezone, the system uses Universal Time, Coordinated (UTC) as default.
-
Enter the
NTP
servers. Click Next.
On the
Locale
page, complete the following steps:-
On the
Keyboard
search field, enter the package name you want to add to your system image. For example: ["en_US.UTF-8"]. -
On the
Languages
search field, enter the package name you want to add to your system image. For example: "us". Click Next.
-
On the
On the
Others
page, complete the following steps:-
On the
Hostname
field, enter the hostname you want to add to your system image. If you do not add a hostname, the operating system determines the hostname. -
Mandatory only for the Simplifier Installer image: On the
Installation Devices
field, enter a valid node for your system image. For example:dev/sda1
. Click Next.
-
On the
Mandatory only when building FIDO images: On the
FIDO device onboarding
page, complete the following steps:On the
Manufacturing server URL
field, enter the following information:-
On the
DIUN public key insecure
field, enter the insecure public key. -
On the
DIUN public key hash
field, enter the public key hash. -
On the
DIUN public key root certs
field, enter the public key root certs. Click Next.
-
On the
On the
OpenSCAP
page, complete the following steps:-
On the
Datastream
field, enter thedatastream
remediation instructions you want to add to your system image. -
On the
Profile ID
field, enter theprofile_id
security profile you want to add to your system image. Click Next.
-
On the
Mandatory only when building Ignition images: On the
Ignition
page, complete the following steps:-
On the
Firstboot URL
field, enter the package name you want to add to your system image. -
On the
Embedded Data
field, drag or upload your file. Click Next.
-
On the
-
. On the
Review
page, review the details about the blueprint. Click Create.
The image builder view opens, listing existing blueprints.
5.3. Importing a blueprint in the image builder web console interface
You can import and use an already existing blueprint. The system automatically resolves all the dependencies.
Prerequisites
- You have opened the image builder app from thr web console in a browser.
- You have a blueprint that you want to import to use in the image builder web console interface.
Procedure
-
On the image builder dashboard, click Import blueprint. The
Import blueprint
wizard opens. -
From the
Upload
field, either drag or upload an existing blueprint. This blueprint can be in eitherTOML
orJSON
format. Click Import. The dashboard lists the blueprint you imported.
When you click the blueprint you imported, you have access to a dashboard with all the customizations for the blueprint that you imported.
Verification
To verify the packages that have been selected for the imported blueprint, navigate to the
Packages
tab.- To list all the package dependencies, click All. The list is searchable and can be ordered.
Optional: To modify any customization:
-
From the
Customizations
dashboard, click the customization you want to make a change. Optionally, you can click Edit blueprint to navigate to all the available customization options.
-
From the
Additional resources
5.4. Exporting a blueprint from the image builder web console interface
You can export a blueprint to use the customizations in another system. You can export the blueprint in the TOML
or in the JSON
format. Both formats work on the CLI and also in the API interface.
Prerequisites
- You have opened the image builder app from the web console in a browser.
- You have a blueprint that you want to export.
Procedure
- On the image builder dashboard, select the blueprint you want to export.
-
Click
Export blueprint
. TheExport blueprint
wizard opens. To save the
Exported blueprint
, click the Export button.- Optionally, click the Copy button to copy the blueprint.
Verification
- Open the exported blueprint to inspect and review it.
5.5. Creating a system image using image builder in the web console interface
You can create a customized RHEL system image from a blueprint by completing the following steps.
Prerequisites
- You opened the image builder app from web console in a browser.
- You created a blueprint.
Procedure
- Access image builder dashboard.
- On the blueprint table, find the blueprint you want to build an image.
- On the right side of the chosen blueprint, click Create Image. The Create image dialog wizard opens.
-
Navigate to the
Images
tab and clickCreate Image
. TheCreate image
wizard opens. On the Image output page, complete the following steps:
- From the Select a blueprint list, select the image type you want.
From the Image output type list, select the image output type you want.
Depending on the image type you select, you need to add further details.
- Click Next.
On the Review page, review the details about the image creation and click Create image.
The image build starts and takes up to 20 minutes to complete.
Verification
After the image finishes building, you can:
- Download the image.
- Download the logs of the image to inspect the elements and verify if any issue is found.