github.com/opencontainers/umoci@v0.4.8-0.20240508124516-656e4836fb0d/doc/man/umoci-raw-runtime-config.1.md (about)

     1  % umoci-raw-runtime-config(1) # umoci raw runtime-config - Generate an OCI runtime configuration for an image
     2  % Aleksa Sarai
     3  % DECEMBER 2016
     4  # NAME
     5  umoci raw runtime-config - Generate an OCI runtime configuration for an image
     6  
     7  # SYNOPSIS
     8  **umoci raw runtime-config**
     9  **--image**=*image*[:*tag*]
    10  [**--rootfs**=*rootfs*]
    11  [**--rootless**]
    12  *config*
    13  
    14  **umoci raw config**
    15  **--image**=*image*[:*tag*]
    16  [**--rootfs**=*rootfs*]
    17  [**--rootless**]
    18  *config*
    19  
    20  # DESCRIPTION
    21  Generate a new OCI runtime configuration from an image, without extracting the
    22  rootfs of said image. The configuration is written to the path given by
    23  *config*, overwriting it if it exists already. This is one of the operations
    24  done by **umoci-unpack**(1) when generating the runtime bundle, but because of
    25  the overhead of extracting a root filesystem, **umoci-unpack**(1) is not
    26  practical to be used many times if the user doesn't actually want to use the
    27  root filesystem. Some fields require a root filesystem as a "source of truth",
    28  and a source root filesystem can be specified using **--rootfs**. The other
    29  flags have the same effects as with **umoci-unpack**(1).
    30  
    31  Note however that the output of **umoci-raw-runtime-config**(1) is not
    32  necessarily identical to the output from **umoci-unpack**(1). This is
    33  especially true if **--rootfs** is not specified, which results in **umoci**(1)
    34  leaving fields in the runtime spec to their defaults if computing their values
    35  would require using the root filesystem as a source-of-truth.
    36  
    37  # OPTIONS
    38  The global options are defined in **umoci**(1).
    39  
    40  **--image**=*image*[:*tag*]
    41    The OCI image tag which will be extracted to the *bundle*. *image* must be a
    42    path to a valid OCI image and *tag* must be a valid tag in the image. If
    43    *tag* is not provided it defaults to "latest".
    44  
    45  **--rootfs**=*rootfs*
    46    Use *rootfs* as a secondary source of truth when generating the runtime
    47    configuration (this is especially important for *Config.User* conversion). If
    48    unspecified, any runtime fields that require a secondary source of truth to
    49    be filled with be left in their default values. This may result in
    50    discrepancies between the output of **umoci-unpack**(1) and
    51    **umoci-raw-runtime-config**(1).
    52  
    53  **--rootless**
    54    Generate a rootless container configuration, similar to the configuration
    55    produced by **umoci-unpack**(1) when provided the **--rootless** flag.
    56  
    57  # EXAMPLE
    58  The following downloads an image from a **docker**(1) registry using
    59  **skopeo**(1) and then generates the *config.json* for that image.
    60  
    61  ```
    62  % skopeo copy docker://opensuse/amd64:42.2 oci:image:latest
    63  % umoci raw runtime-config --image image:latest config.json
    64  ```
    65  
    66  If a root filesystem is already present, it is possible to specify it with the
    67  **--rootfs** flag. This will source the root filesystem for conversion
    68  operations that necessitate it.
    69  
    70  ```
    71  % skopeo copy docker://opensuse/amd64:42.2 oci:image:latest
    72  # umoci unpack --image image bundle
    73  % umoci raw runtime-config --image image --rootfs bundle/rootfs config.json
    74  ```
    75  
    76  # SEE ALSO
    77  **umoci**(1), **umoci-repack**(1), **runc**(8)