v v
v v

Reputation: 653

How to remove docker images which created 7 days ago automatically?

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.

Upvotes: 27

Views: 33314

Answers (3)

hojin
hojin

Reputation: 1395

https://docs.docker.com/engine/reference/commandline/image_prune/

docker image prune -a --force --filter "until=240h"

Upvotes: 10

Newalp
Newalp

Reputation: 801

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"

Upvotes: 36

Ignacio Millán
Ignacio Millán

Reputation: 8026

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')"

Upvotes: 40

Related Questions