Around 3 years ago I’ve checked the age of various base images available on Docker Hub. Curiosity recently got the better of me, prompting another investigation into the current state of affairs.

Since then, there have been significant changes:

Let’s delve into the findings:

ImageCreation dateAge
(in days)
Packages
to upgrade
centos:72021-09-1592151
quay.io/centos/centos:centos72020-11-14122651
quay.io/centos/centos:stream82024-03-1952
quay.io/centos/centos:stream92024-03-1950
debian:102024-03-12120
debian:112024-03-12120
debian:122024-03-12120
ubuntu:18.042023-05-302991
ubuntu:20.042024-02-16360
ubuntu:22.042024-02-27262
ubuntu:24.042024-02-252810
alpine:3.172024-01-27571
alpine:3.182024-01-27571
alpine:3.192024-01-27571
node:162023-09-0819878
node:182024-03-12120
node:202024-03-12120
node:212024-03-12120
openjdk:82022-08-0260045
openjdk:112022-08-0260045
openjdk:172022-04-2769667
openjdk:212023-09-2218441
amazoncorretto:82024-03-1680
amazoncorretto:112024-03-1680
amazoncorretto:172024-03-1681
amazoncorretto:212024-03-1680
eclipse-temurin:82024-03-06184
eclipse-temurin:112024-03-06184
eclipse-temurin:172024-03-06184
eclipse-temurin:212024-03-06184

Surprisingly, the results were not as dire as expected. Modern OS versions tend to be reasonably up-to-date. This marks a positive change from the past, where CentOS images were both popular and outdated.

However, it’s worth noting that many users may still be unaware of the age of certain images, such as openjdk, potentially leading to issues down the line. A search on GitHub revealsexternal link nearly 300k Dockerfiles referencing FROM openjdk.

How did I collect those numbers?

I wrote a small bash script. Use it as a base to check images of your interest.


Enjoyed? Buy Me a Coffee at ko-fi.com