Building Images

Hint

This document provides an overview about the supported KIWI image types. Before building an image with KIWI it’s important to understand the different image types and their meaning.

ISO Hybrid Live Image

An iso image which can be dumped on a CD/DVD or USB stick and boots off from this media without interfering with other system storage components. A useful pocket system for testing and demo and debugging purposes.

Virtual Disk Image

An image representing the system disk, useful for cloud frameworks like Amazon EC2, Google Compute Engine or Microsoft Azure.

OEM Expandable Disk Image

An image representing an expandable system disk. This means after deployment the system can resize itself to the new disk geometry. The resize operation is configurable as part of the image description and an installation image for CD/DVD, USB stick and Network deployment can be created in addition.

PXE root File System Image

A root filesystem image which can be deployed via KIWI’s PXE netboot infrastructure. A client configuration file on the pxe server controls how the root filesystem image should be deployed. Many different deployment strategies are possible, e.g root over NBD, AoE or NFS for diskless and diskfull clients.

Docker Container Image

An archive image suitable for the docker container engine. The image can be loaded via the docker load command and works within the scope of the container engine

Supported Distributions

KIWI can build images for the distributions which are equal or newer compared to the table below. For anything older use the legacy KIWI version v7.x For more details on the legacy KIWI, see: Legacy KIWI vs. Next Generation

The most compatible environment is provided if the build host is of the same distribution than the target image. This always applies for the Open Build Service (OBS). In other cases please check the table if your target combination is known to be supported.

Host / Image

CentOS 7

Fedora 30

openSUSE Leap 15

RHEL 7

SLE 12

SLE 15

openSUSE TW

Ubuntu 19

CentOS 7

yes

no

no

yes

no

no

no

no

Fedora 30

untested

yes

no

untested

no

no

no

no

openSUSE Leap 15

untested

note:dnf

yes

untested

no

yes

no

no

RHEL 7

untested

no

no

yes

no

no

no

no

SLE 12

no

untested

untested

no

yes

no

no

no

SLE 15

untested

note:dnf

yes

no

no

yes

untested

no

openSUSE TW

untested

note:dnf

yes

untested

no

untested

yes

no

Ubuntu 19

no

no

no

no

no

no

no

yes

dnf

dnf is the package manager used on Fedora and RHEL and is the successor of yum. When KIWI builds images for this distributions the latest version of dnf is required to be installed on the host to build the image.

In general, our goal is to support any major distribution with KIWI. However for building images we rely on core tools which are not under our control. Also several design aspects of distributions like secure boot and working with upstream projects are different and not influenced by us. There are many side effects that can be annoying especially if the build host is not of the same distribution vendor than the image target.

Supported Platforms and Architectures

Images built with KIWI are designed for a specific use case. The author of the image description sets this with the contents in the KIWI XML document as well as custom scripts and services. The following list provides a brief overview of the platforms where KIWI built images are productively used:

  • Amazon EC2

  • Microsoft Azure

  • Google Compute Engine

  • Private Data Centers based on OpenStack

  • Bare metal deployments e.g Microsoft Azure Large Instance

  • SAP workloads

For further information or on interest in one of the above areas, contact us directly: Contact

The majority of the workloads is based on the x86 architecture. KIWI also supports other architectures, shown in the table below:

Architecture

Supported

x86_64

yes

ix86

yes note:distro

s390/s390x

yes note:distro

arm/aarch64

yes note:distro

ppc64

no (alpha-phase)

distro

The support status for an architecture depends on the distribution. If the distribution does not build its packages for the desired architecture, KIWI will not be able to build an image for it