oadm-prune-images man page

oadm prune images ā€” Remove unreferenced images

Synopsis

oadm prune images [Options]

Description

Remove image stream tags, images, and image layers by age or usage

This command removes historical image stream tags, unused images, and unreferenced image layers from the integrated registry. By default, all images are considered as candidates. The command can be instructed to consider only images that have been directly pushed to the registry by supplying --all=false flag.

By default, the prune operation performs a dry run making no changes to internal registry. A --confirm flag is needed for changes to be effective.

Only a user with a cluster role system:image-pruner or higher who is logged-in will be able to actually delete the images.

If the registry is secured with a certificate signed by a self-signed root certificate authority other than the one present in current user's config, you may need to specify it using --certificate-authority flag.

Insecure connection is allowed in following cases unless certificate-authority is specified: 1. --force-insecure is given 2. user's config allows for insecure connection (the user logged in to the cluster with --insecure-skip-tls-verify or allowed for insecure connection) 3. registry url is not given or it's a private/link-local address

Options

--all=true

Include images that were not pushed to the registry but have been mirrored by pullthrough.

--certificate-authority=""

The path to a certificate authority bundle to use when communicating with the managed Docker registries. Defaults to the certificate authority data from the current user's config file. It cannot be used together with --force-insecure.

--confirm=false

If true, specify that image pruning should proceed. Defaults to false, displaying what would be deleted but not actually deleting anything.

--force-insecure=false

If true, allow an insecure connection to the docker registry that is hosted via HTTP or has an invalid HTTPS certificate. Whenever possible, use --certificate-authority instead of this dangerous option.

--keep-tag-revisions=3

Specify the number of image revisions for a tag in an image stream that will be preserved.

--keep-younger-than=0

Specify the minimum age of an image for it to be considered a candidate for pruning.

--prune-over-size-limit=false

Specify if images which are exceeding LimitRanges (see 'openshift.io/Image'), specified in the same namespace, should be considered for pruning. This flag cannot be combined with --keep-younger-than nor --keep-tag-revisions.

--registry-url=""

The address to use when contacting the registry, instead of using the default value. This is useful if you can't resolve or reach the registry (e.g.; the default is a cluster-internal URL) but you do have an alternative route that works.

Options Inherited from Parent Commands

--api-version=""

DEPRECATED: The API version to use when talking to the server

--as=""

Username to impersonate for the operation

--azure-container-registry-config=""

Path to the file container Azure container registry configuration information.

--client-certificate=""

Path to a client certificate file for TLS

--client-key=""

Path to a client key file for TLS

--cluster=""

The name of the kubeconfig cluster to use

--config=""

Path to the config file to use for CLI requests.

--context=""

The name of the kubeconfig context to use

--google-json-key=""

The Google Cloud Platform Service Account JSON Key to use for authentication.

--insecure-skip-tls-verify=false

If true, the server's certificate will not be checked for validity. This will make your HTTPS connections insecure

--log-flush-frequency=0

Maximum number of seconds between log flushes

--match-server-version=false

Require server version to match client version

-n, --namespace=""

If present, the namespace scope for this CLI request

--request-timeout="0"

The length of time to wait before giving up on a single server request. Non-zero values should contain a corresponding time unit (e.g. 1s, 2m, 3h). A value of zero means don't timeout requests.

--server=""

The address and port of the Kubernetes API server

--token=""

Bearer token for authentication to the API server

--user=""

The name of the kubeconfig user to use

Example

  # See, what the prune command would delete if only images more than an hour old and obsoleted
  # by 3 newer revisions under the same tag were considered.
  oadm prune images --keep-tag-revisions=3 --keep-younger-than=60m
  
  # To actually perform the prune operation, the confirm flag must be appended
  oadm prune images --keep-tag-revisions=3 --keep-younger-than=60m --confirm
  
  # See, what the prune command would delete if we're interested in removing images
  # exceeding currently set limit ranges ('openshift.io/Image')
  oadm prune images --prune-over-size-limit
  
  # To actually perform the prune operation, the confirm flag must be appended
  oadm prune images --prune-over-size-limit --confirm

See Also

oadm-prune(1),

History

June 2016, Ported from the Kubernetes man-doc generator

Referenced By

oadm-prune(1).

Openshift CLI User Manuals June 2016