Is there a way to remove built docker images some days ago?
If we check docker images
, will got:
REPOSITORY TAG IMAGE ID CREATED SIZE
There exists a CREATED
item.
Researched from the official document, didn't find an option for that.
If we do not want to find dangling images and remove them one by one, we can use the docker image prune command. This command removes all dangling images. If we also want to remove unused images, we can use the -a flag. The command will return the list of image IDs that were removed and the space that was freed.
When you stop a container, it is not automatically removed unless you started it with the --rm flag. To see all containers on the Docker host, including stopped containers, use docker ps -a .
Remove a container upon exiting If you know when you're creating a container that you won't want to keep it around once you're done, you can run docker run --rm to automatically delete it when it exits: Run and Remove: docker run --rm image_name.
Use the docker container prune command to remove all stopped containers, or refer to the docker system prune command to remove unused containers in addition to other Docker resources, such as (unused) images and networks.
docker image prune provides a filter to remove images until a specific date:
docker image prune -a --filter "until=$(date +'%Y-%m-%dT%H:%M:%S' --date='-15 days')"
You can tell docker image prune to delete any images older than a given number of hours, in your case: 7 * 24h= 168h.
docker image prune -a --force --filter "until=168h"
With the option --force, there won't be any prompt so it can easily be added to a crontab to be run on a daily basis.
For this, open crontab in edit mode (crontab -e
) and add the following line to run this command every day at 1am.
0 1 * * * docker image prune -a --force --filter "until=168h"
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With