よく使われるコンテナイメージ
ベース OS・言語ランタイム・DB・プロキシ・監視など、現場で実際によく見る公式/準公式イメージをカテゴリ別にまとめています。
よく使われる組み合わせ
ボタンを押すとチェックがまとめて入ります。
ベース OS
自作イメージの土台。サイズと glibc/musl の違い、シェルの有無に気を配る。
| イメージ | docker pull | よく使うタグ | 説明 / 注意 | Docs | |
|---|---|---|---|---|---|
alpine 公式 | alpine |
| musl libc ベースの最小ディストリ。5 MB 前後で軽い反面、glibc 前提のバイナリや native モジュールが動かないことがある。 注意: `alpine` ではデフォルトで `tzdata` が入っていないので `TZ` を設定したいときは明示的にインストールする。 | 開く → | |
debian 公式 | debian |
| glibc ベースで互換性重視。`*-slim` はドキュメント等を削った軽量版で、実用では大抵これで十分。 | 開く → | |
ubuntu 公式 | ubuntu |
| Debian 派生で apt エコシステムが豊富。CUDA・ML 系イメージのベースに選ばれることが多い。 | 開く → | |
distroless | gcr.io/distroless/static-debian12 |
| シェルもパッケージマネージャも持たない「実行に必要な物だけ」のイメージ。攻撃面が小さくスキャン結果もクリーン。 注意: シェルが無いので `docker exec -it container sh` でのデバッグは不可。別途 `:debug` タグを使う。 | 開く → | |
scratch 公式 | scratch |
| 完全に空のベース。Go や Rust の静的リンクバイナリを置くだけのとき最小サイズになる。 注意: `ca-certificates` も `/etc/passwd` も無い。HTTPS や非 root 実行が必要なら明示的にコピーする。 | ||
busybox 公式 | busybox |
| シェルと基本的な UNIX コマンドだけをまとめた極小イメージ。init コンテナや debug 用途に。 | 開く → |
言語ランタイム
アプリを動かす言語環境。`-alpine` `-slim` バリアントと、開発用 SDK / 本番用 runtime の使い分けが肝。
| イメージ | docker pull | よく使うタグ | 説明 / 注意 | Docs | |
|---|---|---|---|---|---|
node 公式 | node |
| Node.js 公式。`-alpine` は musl、`-slim` は debian-slim。native モジュールの相性で選ぶ。 注意: alpine では `sharp` や `bcrypt` のビルドに `apk add --no-cache python3 make g++` が要ることがある。 | 開く → | |
python 公式 | python |
| Python 公式。数値計算系ライブラリは alpine でビルドがこけやすいので slim が無難。 | 開く → | |
golang 公式 | golang |
| Go 公式。マルチステージで build した静的バイナリを `scratch` や `distroless/static` に置くのが定石。 | 開く → | |
eclipse-temurin 公式 | eclipse-temurin |
| Adoptium が出している OpenJDK ディストリ。旧 `openjdk` 公式の実質的な後継。 | 開く → | |
rust 公式 | rust |
| Rust 公式。ビルド用に使い、マルチステージで成果物だけ別イメージにコピーするのが普通。 | 開く → | |
ruby 公式 | ruby |
| Ruby 公式。Rails 等で nokogiri などのネイティブ拡張をビルドするために build-essential が要ることが多い。 | 開く → | |
php 公式 | php |
| PHP 公式。`-fpm` は Nginx と組む用、`-apache` は単体で動く構成、`-cli` はジョブ向け。 | 開く → | |
dotnet/sdk | mcr.microsoft.com/dotnet/sdk |
| .NET ビルド用 SDK。本番は `mcr.microsoft.com/dotnet/aspnet` や `runtime` に成果物を差し替える。 | 開く → |
データベース
Compose の常連。ボリューム必須、`healthcheck` と `depends_on: service_healthy` で起動順を担保するのが定石。
| イメージ | docker pull | よく使うタグ | 説明 / 注意 | Docs | |
|---|---|---|---|---|---|
postgres 公式 | postgres |
| PostgreSQL 公式。`POSTGRES_PASSWORD` と `-v` ボリュームを渡せば動く。メジャーバージョン跨ぎは pg_dump 必須。 | 開く → | |
mysql 公式 | mysql |
| MySQL 公式(Oracle 版)。`MYSQL_ROOT_PASSWORD` 必須。arm64 ホストでは `platform: linux/amd64` を指定する必要がある場合あり。 | 開く → | |
mariadb 公式 | mariadb |
| MySQL 互換の MariaDB 公式。arm64 ネイティブ対応済みで、Apple Silicon ならこちらが無難。 | 開く → | |
redis 公式 | redis |
| Redis 公式。キャッシュ・キュー・セッションストアの定番。`--appendonly yes` で永続化。 | 開く → | |
mongo 公式 | mongo |
| MongoDB 公式。`MONGO_INITDB_ROOT_USERNAME` / `_PASSWORD` で初期ユーザーを作る。 | 開く → |
メッセージング・キャッシュ
Pub/Sub・キュー・インメモリキャッシュ。永続化を ON にするかは用途しだい。
| イメージ | docker pull | よく使うタグ | 説明 / 注意 | Docs | |
|---|---|---|---|---|---|
rabbitmq 公式 | rabbitmq |
| RabbitMQ 公式。`-management` は Web UI 付き(15672 ポート)。AMQP 定番。 | 開く → | |
nats 公式 | nats |
| 軽量で高速なメッセージブローカー。JetStream でキュー・ストリーミングも対応。 | 開く → | |
bitnami/kafka | bitnami/kafka |
| Bitnami 提供の Kafka。KRaft モード(ZooKeeper なし)で単体起動できて開発用途が楽。 | 開く → | |
memcached 公式 | memcached |
| シンプルなインメモリ KVS。セッションキャッシュや短命な計算結果のキャッシュに。 | 開く → |
Web サーバー・プロキシ
フロント配信・リバースプロキシ・ロードバランサ。HTTPS 終端や静的資産配信で頻出。
| イメージ | docker pull | よく使うタグ | 説明 / 注意 | Docs | |
|---|---|---|---|---|---|
nginx 公式 | nginx |
| nginx 公式。静的配信・リバースプロキシの標準。`/usr/share/nginx/html` に成果物を置くのが定番。 | 開く → | |
caddy 公式 | caddy |
| Let's Encrypt 自動取得がデフォルトの Web サーバー。Caddyfile が圧倒的に書きやすい。 | 開く → | |
traefik 公式 | traefik |
| Docker / Kubernetes のラベルから動的にルーティングを組むリバースプロキシ。compose 環境の HTTPS 入口に。 | 開く → | |
haproxy 公式 | haproxy |
| 高負荷前提の L4/L7 ロードバランサ。細かいヘルスチェックやレート制限で選ばれる。 | 開く → |
監視・可観測性
メトリクス・ログ・トレース。セットで compose に載せて開発中から慣れておくと楽。
| イメージ | docker pull | よく使うタグ | 説明 / 注意 | Docs | |
|---|---|---|---|---|---|
prom/prometheus | prom/prometheus |
| Pull 型のメトリクス収集。exporter と組み合わせて node / app / db などを一元監視する。 | 開く → | |
grafana/grafana | grafana/grafana |
| メトリクス可視化のデファクト。Prometheus / Loki / Jaeger とまとめてダッシュボード化する。 | 開く → | |
grafana/loki | grafana/loki |
| ログ集約基盤。Prometheus のようにラベルで絞り込みでき、Grafana から透過的に検索できる。 | 開く → | |
jaegertracing/all-in-one | jaegertracing/all-in-one |
| 分散トレースのオールインワン。開発用に compose で立ち上げて OpenTelemetry からスパンを流し込む。 | 開く → |
AWS・クラウド
AWS の CLI・ローカルエミュレータ・ベースイメージ類。本番デプロイ前にローカルで AWS サービスを再現するのに使う。
| イメージ | docker pull | よく使うタグ | 説明 / 注意 | Docs | |
|---|---|---|---|---|---|
amazon/aws-cli 公式 | amazon/aws-cli |
| AWS CLI v2 公式イメージ。`docker run --rm -v ~/.aws:/root/.aws amazon/aws-cli s3 ls` のように CLI を使い捨てで動かせる。 | 開く → | |
localstack/localstack | localstack/localstack |
| AWS の主要サービス(S3 / SQS / DynamoDB / Lambda / SNS など)をローカルで再現するエミュレータ。開発・CI での結合テストに。 注意: Pro 版限定のサービスがある。endpoint は `http://localstack:4566` に集約される。 | 開く → | |
amazon/dynamodb-local 公式 | amazon/dynamodb-local |
| DynamoDB をローカルで動かす公式イメージ。テストや開発で AWS 接続せずに動作確認できる。 | 開く → | |
minio/minio | minio/minio |
| S3 互換のオブジェクトストレージ。AWS が使えない環境で S3 SDK をそのまま動かす代替として定番。 | 開く → | |
amazonlinux 公式 | amazonlinux |
| Amazon Linux 公式ベース。Lambda や ECS on Fargate の実行環境と同じ libc・カーネル互換レイヤーを持つので、本番に近い検証ができる。 | 開く → | |
amazoncorretto 公式 | amazoncorretto |
| Amazon が配布する OpenJDK ディストリ。Amazon Linux と組み合わせて Lambda/ECS 向けの Java アプリを動かすときに使う。 | 開く → | |
public.ecr.aws/lambda/nodejs | public.ecr.aws/lambda/nodejs |
| Lambda Node.js 公式ランタイム。SAM・コンテナイメージデプロイのベースとして利用。ローカルでも `docker run` で Lambda 互換に動く。 | 開く → |
CI・開発ツール
CI ジョブやローカル開発で使うユーティリティ系イメージ。
| イメージ | docker pull | よく使うタグ | 説明 / 注意 | Docs | |
|---|---|---|---|---|---|
docker 公式 | docker |
| Docker CLI / daemon を入れたイメージ。CI の中でコンテナをビルドする DinD 用途の定番。 | 開く → | |
hashicorp/terraform | hashicorp/terraform |
| Terraform 公式。IaC を CI で流すときのランナー。バージョン固定はタグで。 | 開く → | |
aquasec/trivy | aquasec/trivy |
| イメージ・IaC・シークレットをまとめてスキャンする脆弱性スキャナ。CI に組み込みやすい。 関連トピック → | 開く → | |
hadolint/hadolint | hadolint/hadolint |
| Dockerfile の lint ツール。`FROM` 固定忘れや `apt-get update` の繋ぎ忘れなどを静的解析する。 | 開く → |
