In order to create images for the different cloud providers, we need to add some extra packages and configuration, and create special disk images
Please refer to the official RHEL AI documentation on how to create machine images for different clouds.
Target | Description |
---|---|
cloud-image | Create bootc image for a cloud, using stable RHEL AI as base |
cloud-disk | Create disk image for a cloud, using the image built with cloud-image |
Variable | Description | Default |
---|---|---|
CLOUD | Sets the name of the cloud: aws, azure, gcp, ibm | |
HARDWARE | Hardware accelerator RHEL AI source image | nvidia |
VERSION | RHEL AI version | 1.1 |
REGISTRY | Container Registry for storing container images | quay.io |
REGISTRY_ORG | Container Registry organization | ai-lab |
IMAGE_NAME | Container image name | bootc-${HARDWARE}-rhel9-${CLOUD} |
IMAGE_TAG | Container image tag | ${CLOUD}-latest |
CONTAINER_TOOL | Container tool used for build | podman |
CONTAINER_TOOL_EXTRA_ARGS | Container tool extra arguments | |
BASEIMAGE | Source RHEL AI image | registry.stage.redhat.io/rhelai1/bootc-nvidia-rhel9:latest |
BOOTC_IMAGE_CLOUD | Override cloud image name | ${REGISTRY}/${REGISTRY_ORG}/${IMAGE_NAME}:${IMAGE_TAG} |
Simply execute make cloud-image CLOUD=<cloud_provider> BASEIMAGE=<rhel_ai_base_image>
. For example:
- make cloud-image CLOUD=ibm BASEIMAGE=quay.io/ai-lab/nvidia-bootc:1.1
- make cloud-image CLOUD=gcp BASEIMAGE=quay.io/ai-lab/nvidia-bootc:1.1
Once you have the bootc image, you can use it to create a disk image.
Simply execute make cloud-disk CLOUD=<cloud_provider>
. For example:
- make cloud-disk CLOUD=ibm
- make cloud-disk CLOUD=gcp
This will produce an image in the build/output
directory.
Then, you can follow RHEL AI documentation on how to create a machine image in your cloud provider.