2015-06-21 16:41:38 -04:00
|
|
|
# rmi
|
|
|
|
|
2023-01-06 13:04:05 -05:00
|
|
|
<!---MARKER_GEN_START-->
|
2016-07-07 14:43:18 -04:00
|
|
|
Remove one or more images
|
2015-06-21 16:41:38 -04:00
|
|
|
|
2023-01-06 13:04:05 -05:00
|
|
|
### Aliases
|
|
|
|
|
|
|
|
`docker image rm`, `docker image remove`, `docker rmi`
|
|
|
|
|
|
|
|
### Options
|
|
|
|
|
2024-07-03 02:29:57 -04:00
|
|
|
| Name | Type | Default | Description |
|
|
|
|
|:----------------|:-------|:--------|:-------------------------------|
|
|
|
|
| `-f`, `--force` | `bool` | | Force removal of the image |
|
|
|
|
| `--no-prune` | `bool` | | Do not delete untagged parents |
|
2023-01-06 13:04:05 -05:00
|
|
|
|
cli: use custom annotation for aliases
Cobra allows for aliases to be defined for a command, but only allows these
to be defined at the same level (for example, `docker image ls` as alias for
`docker image list`). Our CLI has some commands that are available both as a
top-level shorthand as well as `docker <object> <verb>` subcommands. For example,
`docker ps` is a shorthand for `docker container ps` / `docker container ls`.
This patch introduces a custom "aliases" annotation that can be used to print
all available aliases for a command. While this requires these aliases to be
defined manually, in practice the list of aliases rarely changes, so maintenance
should be minimal.
As a convention, we could consider the first command in this list to be the
canonical command, so that we can use this information to add redirects in
our documentation in future.
Before this patch:
docker images --help
Usage: docker images [OPTIONS] [REPOSITORY[:TAG]]
List images
Options:
-a, --all Show all images (default hides intermediate images)
...
With this patch:
docker images --help
Usage: docker images [OPTIONS] [REPOSITORY[:TAG]]
List images
Aliases:
docker image ls, docker image list, docker images
Options:
-a, --all Show all images (default hides intermediate images)
...
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-06-28 04:52:25 -04:00
|
|
|
|
2023-01-06 13:04:05 -05:00
|
|
|
<!---MARKER_GEN_END-->
|
2015-06-21 16:41:38 -04:00
|
|
|
|
2019-01-21 10:15:45 -05:00
|
|
|
## Description
|
|
|
|
|
|
|
|
Removes (and un-tags) one or more images from the host node. If an image has
|
|
|
|
multiple tags, using this command with the tag as a parameter only removes the
|
|
|
|
tag. If the tag is the only one for the image, both the image and the tag are
|
|
|
|
removed.
|
|
|
|
|
|
|
|
This does not remove images from a registry. You cannot remove an image of a
|
|
|
|
running container unless you use the `-f` option. To see all images on a host
|
2024-01-19 08:06:29 -05:00
|
|
|
use the [`docker image ls`](image_ls.md) command.
|
2019-01-21 10:15:45 -05:00
|
|
|
|
2017-02-07 18:42:48 -05:00
|
|
|
## Examples
|
|
|
|
|
2015-06-21 16:41:38 -04:00
|
|
|
You can remove an image using its short or long ID, its tag, or its digest. If
|
2017-10-02 00:36:13 -04:00
|
|
|
an image has one or more tags referencing it, you must remove all of them before
|
2016-01-06 20:57:21 -05:00
|
|
|
the image is removed. Digest references are removed automatically when an image
|
|
|
|
is removed by tag.
|
2015-06-21 16:41:38 -04:00
|
|
|
|
2021-08-21 08:54:14 -04:00
|
|
|
```console
|
2017-02-07 18:42:48 -05:00
|
|
|
$ docker images
|
|
|
|
|
|
|
|
REPOSITORY TAG IMAGE ID CREATED SIZE
|
|
|
|
test1 latest fd484f19954f 23 seconds ago 7 B (virtual 4.964 MB)
|
|
|
|
test latest fd484f19954f 23 seconds ago 7 B (virtual 4.964 MB)
|
|
|
|
test2 latest fd484f19954f 23 seconds ago 7 B (virtual 4.964 MB)
|
|
|
|
|
|
|
|
$ docker rmi fd484f19954f
|
|
|
|
|
|
|
|
Error: Conflict, cannot delete image fd484f19954f because it is tagged in multiple repositories, use -f to force
|
|
|
|
2013/12/11 05:47:16 Error: failed to remove one or more images
|
|
|
|
|
2018-10-13 12:56:41 -04:00
|
|
|
$ docker rmi test1:latest
|
2017-02-07 18:42:48 -05:00
|
|
|
|
|
|
|
Untagged: test1:latest
|
|
|
|
|
2018-10-13 12:56:41 -04:00
|
|
|
$ docker rmi test2:latest
|
2017-02-07 18:42:48 -05:00
|
|
|
|
|
|
|
Untagged: test2:latest
|
|
|
|
|
2015-06-21 16:41:38 -04:00
|
|
|
|
2017-02-07 18:42:48 -05:00
|
|
|
$ docker images
|
2015-06-21 16:41:38 -04:00
|
|
|
|
2017-02-07 18:42:48 -05:00
|
|
|
REPOSITORY TAG IMAGE ID CREATED SIZE
|
|
|
|
test latest fd484f19954f 23 seconds ago 7 B (virtual 4.964 MB)
|
2015-06-21 16:41:38 -04:00
|
|
|
|
2018-10-13 12:56:41 -04:00
|
|
|
$ docker rmi test:latest
|
2017-02-07 18:42:48 -05:00
|
|
|
|
|
|
|
Untagged: test:latest
|
|
|
|
Deleted: fd484f19954f4920da7ff372b5067f5b7ddb2fd3830cecd17b96ea9e286ba5b8
|
|
|
|
```
|
2015-06-21 16:41:38 -04:00
|
|
|
|
|
|
|
If you use the `-f` flag and specify the image's short or long ID, then this
|
|
|
|
command untags and removes all images that match the specified ID.
|
|
|
|
|
2021-08-21 08:54:14 -04:00
|
|
|
```console
|
2017-02-07 18:42:48 -05:00
|
|
|
$ docker images
|
|
|
|
|
|
|
|
REPOSITORY TAG IMAGE ID CREATED SIZE
|
|
|
|
test1 latest fd484f19954f 23 seconds ago 7 B (virtual 4.964 MB)
|
|
|
|
test latest fd484f19954f 23 seconds ago 7 B (virtual 4.964 MB)
|
|
|
|
test2 latest fd484f19954f 23 seconds ago 7 B (virtual 4.964 MB)
|
|
|
|
|
|
|
|
$ docker rmi -f fd484f19954f
|
2015-06-21 16:41:38 -04:00
|
|
|
|
2017-02-07 18:42:48 -05:00
|
|
|
Untagged: test1:latest
|
|
|
|
Untagged: test:latest
|
|
|
|
Untagged: test2:latest
|
|
|
|
Deleted: fd484f19954f4920da7ff372b5067f5b7ddb2fd3830cecd17b96ea9e286ba5b8
|
|
|
|
```
|
2015-06-21 16:41:38 -04:00
|
|
|
|
|
|
|
An image pulled by digest has no tag associated with it:
|
|
|
|
|
2021-08-21 08:54:14 -04:00
|
|
|
```console
|
2017-02-07 18:42:48 -05:00
|
|
|
$ docker images --digests
|
|
|
|
|
|
|
|
REPOSITORY TAG DIGEST IMAGE ID CREATED SIZE
|
|
|
|
localhost:5000/test/busybox <none> sha256:cbbf2f9a99b47fc460d422812b6a5adff7dfee951d8fa2e4a98caa0382cfbdbf 4986bf8c1536 9 weeks ago 2.43 MB
|
|
|
|
```
|
2015-06-21 16:41:38 -04:00
|
|
|
|
|
|
|
To remove an image using its digest:
|
|
|
|
|
2021-08-21 08:54:14 -04:00
|
|
|
```console
|
2017-02-07 18:42:48 -05:00
|
|
|
$ docker rmi localhost:5000/test/busybox@sha256:cbbf2f9a99b47fc460d422812b6a5adff7dfee951d8fa2e4a98caa0382cfbdbf
|
|
|
|
Untagged: localhost:5000/test/busybox@sha256:cbbf2f9a99b47fc460d422812b6a5adff7dfee951d8fa2e4a98caa0382cfbdbf
|
|
|
|
Deleted: 4986bf8c15363d1c5d15512d5266f8777bfba4974ac56e3270e7760f6f0a8125
|
|
|
|
Deleted: ea13149945cb6b1e746bf28032f02e9b5a793523481a0a18645fc77ad53c4ea2
|
|
|
|
Deleted: df7546f9f060a2268024c8a230d8639878585defcc1bc6f79d2728a13957871b
|
|
|
|
```
|