dwww Home | Manual pages | Find package

buildah-push(1)             General Commands Manual             buildah-push(1)

NAME
       buildah-push  -  Push  an image, manifest list or image index from local
       storage to elsewhere.

SYNOPSIS
       buildah push [options] image [destination]

DESCRIPTION
       Pushes an image from local storage to a  specified  destination,  decom-
       pressing and recompessing layers as needed.

imageID
       Image stored in local container/storage

DESTINATION
       DESTINATION  is  the  location the container image is pushed to. It sup-
       ports all transports from containers-transports(5) (see examples below).
       If no transport is specified,  the  docker  (i.e.,  container  registry)
       transport is used.

OPTIONS
       --all

       If specified image is a manifest list or image index, push the images in
       addition to the list or index itself.

       --authfile path

       Path  of the authentication file. Default is ${XDG_RUNTIME_DIR}/contain-
       ers/auth.json. See containers-auth.json(5) for  more  information.  This
       file is created using buildah login.

       If the authorization state is not found there, $HOME/.docker/config.json
       is checked, which is set using docker login.

       Note:  You can also override the default path of the authentication file
       by setting the  REGISTRY_AUTH_FILE  environment  variable.  export  REG-
       ISTRY_AUTH_FILE=path

       --cert-dir path

       Use  certificates  at path (*.crt, *.cert, *.key) to connect to the reg-
       istry.  The default certificates directory is /etc/containers/certs.d.

       --compression-format format

       Specifies the compression format to use.  Supported  values  are:  gzip,
       zstd and zstd:chunked.  zstd:chunked is incompatible with encrypting im-
       ages, and will be treated as zstd with a warning in that case.

       --compression-level level

       Specify the compression level used with the compression.

       Specifies  the  compression  level to use.  The value is specific to the
       compression algorithm used, e.g. for zstd the accepted values are in the
       range 1-20 (inclusive), while for gzip it is 1-9 (inclusive).

       --creds creds

       The [username[:password]] to use to authenticate with  the  registry  if
       required.  If one or both values are not supplied, a command line prompt
       will appear and the value can be entered.  The password is entered with-
       out echo.

       --digestfile Digestfile

       After  copying the image, write the digest of the resulting image to the
       file.

       --disable-compression, -D

       Don't compress copies of filesystem layers which will be pushed.

       --encrypt-layer layer(s)

       Layer(s) to encrypt: 0-indexed layer indices with support  for  negative
       indexing  (e.g.  0 is the first layer, -1 is the last layer). If not de-
       fined, will encrypt all layers if encryption-key flag is specified.

       --encryption-key key

       The [protocol:keyfile] specifies the encryption protocol, which  can  be
       JWE  (RFC7516),  PGP (RFC4880), and PKCS7 (RFC2315) and the key material
       required for image encryption.  For  instance,  jwe:/path/to/key.pem  or
       pgp:admin@example.com or pkcs7:/path/to/x509-file.

       --force-compression

       If set, push uses the specified compression algorithm even if the desti-
       nation  contains  a differently-compressed variant already.  Defaults to
       true if --compression-format is explicitly  specified  on  the  command-
       line, false otherwise.

       --format, -f

       Manifest  Type  (oci,  v2s2, or v2s1) to use when pushing an image. (de-
       fault is manifest type of the source image, with fallbacks)

       --quiet, -q

       When writing the output image, suppress progress output.

       --remove-signatures

       Don't copy signatures when pushing images.

       --retry attempts

       Number of times to retry in case of failure when performing push of  im-
       ages to registry.

       Defaults to 3.

       --retry-delay duration

       Duration  of  delay  between retry attempts in case of failure when per-
       forming push of images to registry.

       Defaults to 2s.

       --rm

       When pushing a manifest list or image  index,  delete  them  from  local
       storage if pushing succeeds.

       --sign-by fingerprint

       Sign  the pushed image using the GPG key that matches the specified fin-
       gerprint.

       --tls-verify bool-value

       Require HTTPS and verification of certificates when talking to container
       registries (defaults to true).  TLS verification  cannot  be  used  when
       talking to an insecure registry.

EXAMPLE
       This example pushes the image specified by the imageID to a local direc-
       tory in docker format.

       # buildah push imageID dir:/path/to/image

       This example pushes the image specified by the imageID to a local direc-
       tory in oci format.

       # buildah push imageID oci:/path/to/layout:image:tag

       This  example pushes the image specified by the imageID to a tar archive
       in oci format.

       # buildah push imageID oci-archive:/path/to/archive:image:tag

       This example pushes the image specified by the imageID  to  a  container
       registry named registry.example.com.

       # buildah push imageID docker://registry.example.com/repository:tag

       This  example  pushes  the image specified by the imageID to a container
       registry named registry.example.com and saves the digest in  the  speci-
       fied digestfile.

       #  buildah push --digestfile=/tmp/mydigest imageID docker://registry.ex-
       ample.com/repository:tag

       This  example  works   like   docker   push,   assuming   registry.exam-
       ple.com/my_image is a local image.

       # buildah push registry.example.com/my_image

       This example pushes the image specified by the imageID to a private con-
       tainer  registry  named  registry.example.com  with  authentication from
       /tmp/auths/myauths.json.

       # buildah push --authfile /tmp/auths/myauths.json imageID  docker://reg-
       istry.example.com/repository:tag

       This  example pushes the image specified by the imageID and puts it into
       the local docker container store.

       # buildah push imageID docker-daemon:image:tag

       This example pushes the image specified by the imageID and puts it  into
       the registry on the localhost while turning off tls verification.
        # buildah push --tls-verify=false imageID localhost:5000/my-imageID

       This  example pushes the image specified by the imageID and puts it into
       the registry on the localhost using credentials and certificates for au-
       thentication.
        #  buildah  push  --cert-dir  ~/auth  --tls-verify=true   --creds=user-
       name:password imageID localhost:5000/my-imageID

ENVIRONMENT
       BUILD_REGISTRY_SOURCES

       BUILD_REGISTRY_SOURCES,  if  set, is treated as a JSON object which con-
       tains lists of registry names under the keys insecureRegistries, blocke-
       dRegistries, and allowedRegistries.

       When pushing an image to a registry, if the portion of  the  destination
       image  name  that  corresponds to a registry is compared to the items in
       the blockedRegistries list, and if it matches any of them, the push  at-
       tempt is denied.  If there are registries in the allowedRegistries list,
       and  the  portion of the name that corresponds to the registry is not in
       the list, the push attempt is denied.

       TMPDIR The TMPDIR environment variable allows the user to specify  where
       temporary  files  are stored while pulling and pushing images.  Defaults
       to '/var/tmp'.

FILES
       registries.conf (/etc/containers/registries.conf)

       registries.conf is the configuration file  which  specifies  which  con-
       tainer  registries should be consulted when completing image names which
       do not include a registry or domain portion.

       policy.json (/etc/containers/policy.json)

       Signature policy file.  This defines the trust policy for container  im-
       ages.   Controls  which  container registries can be used for image, and
       whether or not the tool should trust the images.

SEE ALSO
       buildah(1),  buildah-login(1),   containers-policy.json(5),   docker-lo-
       gin(1),  containers-registries.conf(5), buildah-manifest(1), containers-
       transports(5), containers-auth.json(5)

buildah                            June 2017                    buildah-push(1)

Generated by dwww version 1.16 on Tue Dec 16 05:45:41 CET 2025.