github.com/containers/podman/v5@v5.1.0-rc1/docs/source/markdown/podman-manifest-add.1.md.in (about)

     1  % podman-manifest-add 1
     2  
     3  ## NAME
     4  podman\-manifest\-add - Add an image or artifact to a manifest list or image index
     5  
     6  ## SYNOPSIS
     7  **podman manifest add** [*options*] *listnameorindexname* [*transport*]:*imagename* *imageorartifactname* [...]
     8  
     9  ## DESCRIPTION
    10  
    11  Adds the specified image to the specified manifest list or image index, or
    12  creates an artifact manifest and adds it to the specified image index.
    13  
    14  ## RETURN VALUE
    15  
    16  The list image's ID.
    17  
    18  ## OPTIONS
    19  
    20  #### **--all**
    21  
    22  If the image which is added to the list or index is itself a list or
    23  index, add all of the contents to the local list.  By default, only one image
    24  from such a list or index is added to the list or index.  Combining
    25  *--all* with any of the other options described below is NOT recommended.
    26  
    27  @@option annotation.manifest
    28  
    29  #### **--arch**=*architecture*
    30  
    31  Override the architecture which the list or index records as a requirement for
    32  the image.  If *imageName* refers to a manifest list or image index, the
    33  architecture information is retrieved from it.  Otherwise, it is
    34  retrieved from the image's configuration information.
    35  
    36  #### **--artifact**
    37  
    38  Create an artifact manifest and add it to the image index.  Arguments after the
    39  index name will be interpreted as file names rather than as image references.
    40  In most scenarios, the **--artifact-type** option should also be specified.
    41  
    42  #### **--artifact-config**=*path*
    43  
    44  When creating an artifact manifest and adding it to the image index, use the
    45  specified file's contents as the configuration blob in the artifact manifest.
    46  In most scenarios, leaving the default value, which signifies an empty
    47  configuration, unchanged, is the preferred option.
    48  
    49  #### **--artifact-config-type**=*type*
    50  
    51  When creating an artifact manifest and adding it to the image index, use the
    52  specified MIME type as the `mediaType` associated with the configuration blob
    53  in the artifact manifest.  In most scenarios, leaving the default value, which
    54  signifies either an empty configuration or the standard OCI configuration type,
    55  unchanged, is the preferred option.
    56  
    57  #### **--artifact-exclude-titles**
    58  
    59  When creating an artifact manifest and adding it to the image index, do not
    60  set "org.opencontainers.image.title" annotations equal to the file's basename
    61  for each file added to the artifact manifest.  Tools which retrieve artifacts
    62  from a registry may use these values to choose names for files when saving
    63  artifacts to disk, so this option is not recommended unless it is required
    64  for interoperability with a particular registry.
    65  
    66  #### **--artifact-layer-type**=*type*
    67  
    68  When creating an artifact manifest and adding it to the image index, use the
    69  specified MIME type as the `mediaType` associated with the files' contents.  If
    70  not specified, guesses based on either the files names or their contents will
    71  be made and used, but the option should be specified if certainty is needed.
    72  
    73  #### **--artifact-subject**=*imageName*
    74  
    75  When creating an artifact manifest and adding it to the image index, set the
    76  *subject* field in the artifact manifest to mark the artifact manifest as being
    77  associated with the specified image in some way.  An artifact manifest can only
    78  be associated with, at most, one subject.
    79  
    80  #### **--artifact-type**=*type*
    81  
    82  When creating an artifact manifest, use the specified MIME type as the
    83  manifest's `artifactType` value instead of the less informative default value.
    84  
    85  @@option authfile
    86  
    87  @@option cert-dir
    88  
    89  @@option creds
    90  
    91  @@option features
    92  
    93  #### **--os**=*OS*
    94  
    95  Override the OS which the list or index records as a requirement for the image.
    96  If *imagename* refers to a manifest list or image index, the OS information
    97  is retrieved from it.  Otherwise, it is retrieved from the image's
    98  configuration information.
    99  
   100  @@option os-version
   101  
   102  @@option tls-verify
   103  
   104  @@option variant.manifest
   105  
   106  ## Transport
   107  
   108   Multiple transports are supported:
   109  
   110    **docker://**_docker-reference_ _(default)_
   111    An image in a registry implementing the "Docker Registry HTTP API V2". By default, uses the authorization state in `$XDG_RUNTIME_DIR/containers/auth.json`, which is set using `(podman login)`. If the authorization state is not found there, `$HOME/.docker/config.json` is checked, which is set using `(docker login)`.
   112  
   113      $ podman manifest add mylist:v1.11 docker://quay.io/username/myimage
   114  
   115    **containers-storage:**_oci-reference_
   116    An image in _oci-reference_ format stored in the local container storage. _oci-reference_ must contain a tag.
   117  
   118      $ podman manifest add mylist:v1.11 containers-storage:quay.io/username/myimage
   119  
   120    **dir:**_path_
   121    An existing local directory _path_ storing the manifest, layer tarballs, and signatures as individual files. This
   122    is a non-standardized format, primarily useful for debugging or noninvasive container inspection.
   123  
   124      $ podman manifest add dir:/tmp/myimage
   125  
   126    **docker-archive:**_path_[**:**_docker-reference_]
   127    An image is stored in the `docker save` formatted file.  _docker-reference_ is only used when creating such a
   128    file, and it must not contain a digest.
   129  
   130      $ podman manifest add docker-archive:/tmp/myimage
   131  
   132    **docker-daemon:**_docker-reference_
   133    An image in _docker-reference_ format stored in the docker daemon internal storage. The _docker-reference_ can also be an image ID (docker-daemon:algo:digest).
   134  
   135      $ sudo podman manifest add docker-daemon:docker.io/library/myimage:33
   136  
   137    **oci-archive:**_path_**:**_tag_
   138    An image _tag_ in a directory compliant with "Open Container Image Layout Specification" at _path_.
   139  
   140      $ podman manifest add oci-archive:/tmp/myimage
   141  
   142  ## EXAMPLE
   143  
   144  Add specified default image from source manifest list to destination manifest list:
   145  ```
   146  podman manifest add mylist:v1.11 docker://fedora
   147  71c201d10fffdcac52968a000d85a0a016ca1c7d5473948000d3131c1773d965
   148  ```
   149  
   150  Add all images from source manfest list to destination manifest list:
   151  ```
   152  podman manifest add --all mylist:v1.11 docker://fedora
   153  71c201d10fffdcac52968a000d85a0a016ca1c7d5473948000d3131c1773d965
   154  ```
   155  
   156  Add selected image matching arch and variant from source manifest list to destination manifest list:
   157  ```
   158  podman manifest add --arch arm64 --variant v8 mylist:v1.11 docker://71c201d10fffdcac52968a000d85a0a016ca1c7d5473948000d3131c1773d965
   159  ```
   160  
   161  ## SEE ALSO
   162  **[podman(1)](podman.1.md)**, **[podman-manifest(1)](podman-manifest.1.md)**