Official Images (PHP) | Docker
Docker Hubでホストされている Official Image についてまとめます。
Official Image のソースは https://github.com/docker-library で管理されています。
以下、php を例にまとめます。
PHP
Docker hub

docker-library(GitHub)
README
PHP の 完全な README.md です。
特に以下の点に注意します。
Supported tags and respective Dockerfile links Note: the description for this image is longer than the Hub length limit of 25000, so the “Supported tags” list has been trimmed to compensate. See also docker/hub-feedback#238 and docker/roadmap#475.
See “Supported tags and respective Dockerfile links” at https://github.com/docker-library/docs/tree/master/php/README.md
現在サポートされているバージョンは Supported tags and respective Dockerfile links に明記するが、文字数の制限から https://github.com/docker-library/docs/tree/master/php/README.md を見るようにと記載されています。
NOTE
DOCKER OFFICIAL IMAGE であってもタグによってはサポート外になっているバージョンもあります。 {; .note}
Dockerfile
php の Dockerfile は https://github.com/docker-library/php で管理されています。

ベースイメージ
php:latest のベースイメージは Debian です。 また Debian のコードネームを指定したイメージが公開されています。
Debian
Docker Hub で配信されている Debian の Official Image(ベースイメージ)は、通常の Dockerfile を使ったビルドとは異なり、再現性(Reproducible)を重視した複数のリポジトリの連携によって管理されています。
全体像と役割一覧
| 役割 | リポジトリ名 | 主な内容・目的 |
|---|---|---|
| 1. タグ定義・マニフェスト | docker-library/official-images | Docker Hub に公開するタグ(bookworm, bullseye 等)と RootFS のコミットハッシュの紐付け |
| 2. RootFS 生成ツール | debuerreotype/debuerreotype | Debian の最小ルートファイルシステム(.tar.xz)を再現可能な形で作成するツール |
| 3. ビルド済み RootFS 保管庫 | debuerreotype/docker-debian-artifacts | 生成された RootFS アーティファクトをアーキテクチャ別に管理するリポジトリ |
| 4. Docker Hub ドキュメント | docker-library/docs | Docker Hub の Debian 概要ページに表示される説明文の管理 |
イメージ作成・公開の流れ
- RootFS の作成 (
debuerreotype)- Docker 公式メンテナが開発した
debuerreotypeツールを使い、Debian 公式パッケージから決定論的(再現可能)に最小限の RootFS (.tar.xz) を生成します
- Docker 公式メンテナが開発した
- アーティファクトの保存 (
docker-debian-artifacts)- 作成された RootFS が
docker-debian-artifactsリポジトリの各ブランチ(例:dist-amd64,dist-arm64)へコミットされます。
- 作成された RootFS が
- 公式マニフェストの更新 (
official-images)official-imagesリポジトリ内のlibrary/debianファイルにて、最新のコミットハッシュおよびタグ定義が書き換えられます。
- Docker Hub へのビルド・配信
- Docker 側の自動ビルドシステムが
library/debianを検知し、FROM scratchに RootFS を展開したイメージを作成して Docker Hub へ配信します。
- Docker 側の自動ビルドシステムが
PHP 公式イメージと Debian の関係性
php:8.2-bookworm などの PHP 公式イメージは、上記で作成された Debian 公式イメージをベースとしてビルドされています。
タグ名とベースイメージの対応
php:8.2-bookworm のようにタグ名に -slim が付いていなくても、実際の Dockerfile の FROM 句では debian:bookworm-slim が指定されています。
# https://github.com/docker-library/php/blob/master/8.2/bookworm/cli/Dockerfile
FROM debian:bookworm-slim
| PHP イメージのタグ | Dockerfile 内の FROM 句 |
実際のベースイメージ |
|---|---|---|
php:8.2-bookworm |
FROM debian:bookworm-slim |
Debian 12 (Bookworm) Slim 版 |
php:8.2-slim-bookworm |
FROM debian:bookworm-slim |
Debian 12 (Bookworm) Slim 版 |
php:8.2-alpine |
FROM alpine:3.xx |
Alpine Linux |
NOTE
php:8.2-bookworm(通常版)とphp:8.2-slim-bookworm(slim版)の違いは Debian 側ではなく、PHP 側に開発用ライブラリやビルドツールが含まれているか否か の違いです。
依存関係とレイヤー構造
両者のイメージは別々のリポジトリで管理され、レイヤーとして継承されています。
[ debuerreotype ] ── RootFS (.tar.xz) を生成
│
▼
[ docker-library/official-images ] ── library/debian マニフェスト
│
▼
[ debian:bookworm-slim ] (ベースイメージ)
│
├─ FROM 句で参照・レイヤー継承
▼
[ docker-library/php ] ── 各バージョンの Dockerfile
│
▼
[ php:8.2-bookworm ] (PHP 公式イメージ)
自動更新とダイジェスト(SHA256)の伝播
ベースイメージ(Debian)にセキュリティ修正等のアップデートが入った場合、PHP 公式イメージにも自動的に変更が適用されます。
- Debian の更新
- OS 側の修正により
debian:bookworm-slimが再ビルドされ、新しい SHA256 ダイジェストが割り当てられる。
- OS 側の修正により
- 自動検知とトリガー
- Docker Official Images のビルドパイプラインがベースイメージの更新を検知する。
- PHP の自動再ビルド*
php:8.2-bookwormの Dockerfile が最新のdebian:bookworm-slimダイジェストを取り込んで自動的に再ビルド・パブリッシュされる。
まとめ
- Debian イメージには単一の Dockerfile リポジトリが存在せず、
debuerreotypeによる RootFS 生成とofficial-imagesによるマニフェストで管理されています - PHP 公式イメージは
debian:bookworm-slimを参照しており、Debian 側が更新されるとパイプラインによって PHP イメージも自動的に最新の Debian レイヤーを取り込んで再ビルドされます