public inbox for docs@lists.yoctoproject.org
 help / color / mirror / Atom feed
From: Quentin Schulz <quentin.schulz@cherry.de>
To: antonin.godard@bootlin.com, docs@lists.yoctoproject.org
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Subject: Re: [docs] [PATCH 2/2] ref-manual/classes.rst: document the image-container class
Date: Fri, 12 Dec 2025 13:07:07 +0100	[thread overview]
Message-ID: <72fe57bb-a025-4816-8337-e3791a300398@cherry.de> (raw)
In-Reply-To: <20251212-image-container-v1-2-fb6586d06813@bootlin.com>

Hi Antonin,

On 12/12/25 11:22 AM, Antonin Godard via lists.yoctoproject.org wrote:
> Add documentation for the image-container class, which is a simple class
> to generate an image suitable for creating a container.
> 

Wrong order of patches, patch 1 uses the reflink created in this patch.

EDIT: and this patch depends on patch 1 as well, so just merge both of 
them into one patch, they are related anyway.

> This answers in part to questions asked in [YOCTO #14368].
> 
> Signed-off-by: Antonin Godard <antonin.godard@bootlin.com>
> ---
>   documentation/ref-manual/classes.rst | 51 ++++++++++++++++++++++++++++++++++++
>   1 file changed, 51 insertions(+)
> 
> diff --git a/documentation/ref-manual/classes.rst b/documentation/ref-manual/classes.rst
> index a56a2f719..0097b7c46 100644
> --- a/documentation/ref-manual/classes.rst
> +++ b/documentation/ref-manual/classes.rst
> @@ -1258,6 +1258,57 @@ The :ref:`ref-classes-image_types` class also handles conversion and compression
>      :term:`IMAGE_FSTYPES`. This would also be similar for Virtual Box Virtual Disk
>      Image ("vdi") and QEMU Copy On Write Version 2 ("qcow2") images.
>   
> +.. _ref-classes-image-container:
> +
> +``image-container``
> +===================
> +
> +The :ref:`ref-classes-image-container` class is meant to be inherited in
> +:doc:`image </ref-manual/images>` recipes. It provides relevant settings to
> +generate an image ready for use with an :wikipedia:`OCI
> +<Open_Container_Initiative>`-compliant container management tool.

such as....? podman and docker I assume, probably others.

> +
> +.. note::
> +
> +   This class does not build and install container management tools on the

s/does not build and install/neither builds nor installs/

> +   target. Support for this is available in the :yocto_git:`meta-virtualization

s/Support for this is/Those tools are/?

> +   </meta-virtualization>` layer.
> +
> +An image recipe inheriting this class should also add the ``container`` image
> +type to the :term:`IMAGE_FSTYPES` variable::
> +
> +   IMAGE_FSTYPES += "container"
> +

Isn't that done by image.bbclass already anyway? This class is 
automatically inherited when IMAGE_FSTYPES contains "container".

c.f. 
https://git.openembedded.org/openembedded-core/tree/meta/classes-recipe/image.bbclass#n20 
and 
https://git.openembedded.org/openembedded-core/tree/meta/classes-recipe/image.bbclass#n25 
?

> +This image type does not deploy anything specific in :term:`DEPLOY_DIR_IMAGE`,
> +but will simply add ``tar.bz2`` to the image types.
> +
> +You must also set the :term:`PREFERRED_PROVIDER` for the Linux kernel to

No. You *can* (and you typically want).

> +``linux-dummy`` in a :term:`configuration file`::
> +
> +   PREFERRED_PROVIDER_virtual/kernel = "linux-dummy"
> +> +The ``linux-dummy`` recipes acts as a Linux kernel recipe but builds 
nothing. It
> +is relevant in this case as a container image does not need to include a Linux
> +kernel. Selecting it as the preferred provider for the kernel will also decrease
> +build time.
> +
> +If desired, the :term:`IMAGE_CONTAINER_NO_DUMMY` variable can be set to "1" to
> +skip the ``PREFERRED_PROVIDER_virtual/kernel`` check.
> +

Ah scratch that review on patch 1, linux-dummy isn't the default.

> +After the image is built, the generated ``tar.bz2`` archive can be used in a
> +container generation file. For example, to be used with :wikipedia:`Podman

Being curious, where did you see "container generation file" being used? 
First time I see Containerfile/Dockerfile named this way. You could keep 
it but maybe specify that it's typically named Containerfile or 
Dockerfile so people know what we're talking about?

Cheers,
Quentin


  reply	other threads:[~2025-12-12 12:07 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-12-12 10:22 [PATCH 0/2] Document the image-container class Antonin Godard
2025-12-12 10:22 ` [PATCH 1/2] ref-manual/variables.rst: document the IMAGE_CONTAINER_NO_DUMMY variable Antonin Godard
2025-12-16 10:04   ` [docs] " Quentin Schulz
2025-12-16 10:50     ` Antonin Godard
2025-12-16 11:01       ` Quentin Schulz
2025-12-16 13:14         ` Antonin Godard
2025-12-12 10:22 ` [PATCH 2/2] ref-manual/classes.rst: document the image-container class Antonin Godard
2025-12-12 12:07   ` Quentin Schulz [this message]
2025-12-16  9:22     ` [docs] " Antonin Godard
2025-12-16 10:54     ` Antonin Godard

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=72fe57bb-a025-4816-8337-e3791a300398@cherry.de \
    --to=quentin.schulz@cherry.de \
    --cc=antonin.godard@bootlin.com \
    --cc=docs@lists.yoctoproject.org \
    --cc=thomas.petazzoni@bootlin.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox