OS
Alpine Linux
The Alpine Linux 3.21 release branch reaches end of support (end of life) on November 1, 2026. After that date the 3.21 branch stops receiving security fixes and package updates, so container images built on the `alpine:3.21` base tag no longer get patched.
departs 1 Nov 2026
Quick answers
- Is it true that Alpine Linux 3.21 reaches end of life on November 1, 2026?
- Yes. Alpine Linux has officially announced it, effective 1 Nov 2026. Alpine Linux is the minimal distribution that underpins a huge share of the world's container images — it is one of the most common `FROM` base images in Dockerfiles because of its tiny size.
- When does it take effect?
- 1 Nov 2026. Verified against the vendor's own announcement.
- What should I use instead?
- Move container images off the `alpine:3.21` base tag to a supported Alpine release branch before November 1, 2026.
What this means for you
Alpine Linux is the minimal distribution that underpins a huge share of the world's container images — it is one of the most common `FROM` base images in Dockerfiles because of its tiny size. Alpine supports each stable release branch for about two years; per its official releases table, the 3.21 branch (released December 5, 2024) reaches end of support on November 1, 2026. Once a branch is end-of-life, Alpine no longer publishes security fixes or package updates for it. In practice that means any image built on `alpine:3.21` (or the point releases under it, like `alpine:3.21.7`) will stop receiving CVE patches after that date, so containers pinned to that tag quietly accumulate unfixed vulnerabilities in the base OS and its `apk` packages even though they keep running. This affects application images, CI base images, and any Dockerfile or compose file that pins the `3.21` tag rather than a still-supported branch. It does not affect newer Alpine branches (3.22, 3.23) or the rolling `edge` branch, which remain supported on their own schedules.
Where to go
Move container images off the `alpine:3.21` base tag to a supported Alpine release branch before November 1, 2026. Inventory your Dockerfiles, compose files, and CI configs for `FROM alpine:3.21` (and any `alpine:3.21.x` point-release pins), then bump them to a current supported branch such as `alpine:3.22` or `alpine:3.23`, or to `alpine:latest` if you track the newest stable. Rebuild and test images against the new base — Alpine minor upgrades occasionally change package versions (musl, busybox, and `apk` packages), so verify that your runtime dependencies and any compiled artifacts still work. If you cannot upgrade the branch immediately, at minimum plan the move soon: an EOL base image is a security-patch dead end, not a stable long-term pin. Teams that need a longer, vendor-backed support window on a container base OS may prefer a distribution with a longer LTS commitment.
- Alpine Linux 3.22 or 3.23 — current supported Alpine stable branches, each with its own ~2-year support window
- A distribution with a longer support commitment as a container base (e.g. Debian stable, Ubuntu LTS) where a longer patch window matters more than image size
- Distroless or Wolfi/Chainguard base images — minimal, actively-maintained alternatives for size-sensitive containers
The Alpine Linux 3.21 release branch reaches end of life on November 1, 2026, per the official Alpine releases table. Alpine supports each stable branch for roughly two years; 3.21 was released on December 5, 2024.
What end of support means
Once a branch is end-of-life, Alpine stops publishing security fixes and package updates for it. Images built on the alpine:3.21 base tag — including point releases like alpine:3.21.7 — keep running, but their base OS and apk packages no longer receive CVE patches. A pinned-but-unsupported base image is a quiet security-patch dead end: nothing breaks, but vulnerabilities accumulate.
Who this affects
Alpine is one of the most common container base images in the world because of its tiny footprint, so this touches a lot of Dockerfiles. Anything that pins FROM alpine:3.21 (or a 3.21.x point release) in an application image, a CI base image, or a compose file is affected. Newer branches — 3.22 and 3.23 — and the rolling edge branch are unaffected and remain on their own support schedules.
What to do
Before November 1, 2026:
- Inventory your Dockerfiles, compose files, and CI configs for
alpine:3.21(andalpine:3.21.x) pins. - Bump them to a supported branch —
alpine:3.22oralpine:3.23— or trackalpine:latestif you follow the newest stable. - Rebuild and test, since Alpine minor upgrades can change
musl,busybox, and package versions; verify your runtime dependencies and any compiled artifacts still work on the new base.
If a longer, predictable patch window matters more than image size, a distribution with a longer LTS commitment (Debian stable, Ubuntu LTS) or an actively-maintained minimal base (distroless, Wolfi/Chainguard) may be a better long-term pin.
This entry tracks the official Alpine Linux releases table; if Alpine changes the 3.21 support date, the entry will be updated with a changelog note.
Entry changelog
- — last reviewed.
- — Entry created from the official Alpine Linux releases table (alpinelinux.org/releases), which lists the 3.21 branch (released 2024-12-05) with an end-of-support date of 2026-11-01. After that date the branch receives no further security fixes or package updates. Machine-detectable in a code repository via the `alpine:3.21` container base image tag, so an image detect fingerprint was added and validated against the public dataset.
Put this countdown in your README
Building on Alpine Linux? Drop this badge into a project’s README or docs — it shows the days left and
refreshes on its own every night from this page.
[](https://lastcall.dev/entries/alpine-3-21-end-of-life) Spot an error or a changed date? Tell us and it’s corrected the same night.