Docker コンテナ 一覧 : コマンド解説 ・ 表示内容 ・ 活用方法

に投稿

Docker コンテナ 一覧 を正しく把握することは、日常的に Docker を扱うエンジニアや開発者にとって欠かせないスキルです。実行中のコンテナだけでなく、停止中や過去に作成されたコンテナも一覧表示する方法を理解しておくことで、環境管理やトラブルシューティングが効率的になります。この記事では、基本コマンドから詳細な表示項目の意味、さらに活用方法まで徹底的に解説していきます。

近年、クラウド開発や DevOps 環境ではコンテナ技術の利用が急速に拡大しています。その中でも Docker コンテナ 一覧 の理解は、単に「確認する」ためだけではなく、環境の整理やデバッグ、セキュリティ管理にまで直結します。以下では、実際のコマンド例や出力結果を交えながら、分かりやすく掘り下げていきます。


Docker コンテナ 一覧 を表示する基本コマンド

docker ps コマンドの概要

最も基本的なコマンドが docker ps です。

  • 役割: 現在「実行中」のコンテナを一覧表示する。
  • 特徴: 停止中のコンテナは表示されない。

実行例

$ docker ps

出力例

CONTAINER ID   IMAGE           COMMAND                  CREATED        STATUS        PORTS                   NAMES
abcdef123456   ubuntu:latest   "/bin/bash"              2 hours ago    Up 2 hours                            my-ubuntu-container
12345abc6789   nginx:latest    "nginx -g 'daemon of…"   3 hours ago    Up 3 hours    0.0.0.0:8080->80/tcp   my-nginx

docker ps -a または docker ps --all の違い

  • 役割: 実行中だけでなく、停止済みのコンテナも含めてすべて表示。
  • 活用シーン: 過去に作成されたが終了したコンテナを確認したいときや、削除対象を把握したいとき。

実行例

$ docker ps -a

出力例

CONTAINER ID   IMAGE           COMMAND                  CREATED        STATUS                      PORTS                   NAMES
abcdef123456   ubuntu:latest   "/bin/bash"              2 hours ago    Exited (0) 1 hour ago                               my-ubuntu-container
12345abc6789   nginx:latest    "nginx -g 'daemon of…"   3 hours ago    Up 3 hours    0.0.0.0:8080->80/tcp   my-nginx

docker container ls コマンドとの違い

docker container ls の役割

  • docker ps と同様に、実行中のコンテナを一覧表示する。
  • 推奨される新しい書き方で、docker ps のエイリアス的な位置づけ。

実行例

$ docker container ls

出力例

CONTAINER ID   IMAGE           COMMAND                  CREATED        STATUS        PORTS                   NAMES
a1b2c3d4e5f6   nginx:latest    "nginx -g 'daemon of…"   About a minute ago   Up About a minute   0.0.0.0:8080->80/tcp   my-nginx

docker container ls -a

  • docker container ls に -a オプション を追加すると、停止済みも含めてすべて表示される。

実行例

$ docker container ls -a

出力例

CONTAINER ID   IMAGE           COMMAND                  CREATED             STATUS                      PORTS                   NAMES
a1b2c3d4e5f6   nginx:latest    "nginx -g 'daemon of…"   About a minute ago  Up About a minute   0.0.0.0:8080->80/tcp   my-nginx
gfedcba98765   ubuntu          "/bin/bash"              2 minutes ago       Exited (0) About a minute ago                       my-ubuntu

Docker コンテナ 一覧 に表示される情報の意味

以下は docker ps または docker container ls 実行時に表示される主要なカラムと意味です。

カラム名説明
CONTAINER IDコンテナのユニークな識別子。短縮表示されることが多い。
IMAGEコンテナのベースとなる Docker イメージ名。
COMMANDコンテナ起動時に実行されているコマンド。
CREATEDコンテナが作成された日時。
STATUSコンテナの状態(例: Up、Exited、Paused)。
PORTSコンテナのポートとホストOSのポートのマッピング情報。
NAMESユーザーが指定、または自動的に付与されたコンテナ名。

Docker コンテナ 一覧 の活用方法

1. 実行中の環境を把握

  • 複数のアプリケーションを同時にコンテナで動かしている場合、どのサービスが稼働中か即座に確認可能。

2. 停止済みコンテナの整理

  • docker ps -a で停止済みを把握し、不要なものを削除。
  • 削除例: $ docker rm <CONTAINER ID>

3. デバッグやトラブルシューティング

  • STATUS カラムを見れば、起動に失敗したかどうかを素早く確認できる。

4. ポート競合の確認

  • PORTS カラムで、どのコンテナがどのポートを使っているかを一覧確認可能。

表形式でまとめたコマンド比較

コマンド表示対象主な用途
docker ps実行中のコンテナのみ稼働中のサービス確認
docker ps -a実行中+停止済みすべて過去の履歴確認、削除対象の把握
docker container ls実行中のコンテナのみdocker ps と同等、推奨される新しい記法
docker container ls -a実行中+停止済みすべてより詳細にコンテナ管理、停止済み含めた確認

具体的なユースケース例

  1. 開発環境で複数コンテナを同時稼働
    • Nginx、MySQL、Redis などを起動している場合、それぞれが正常に動いているかを確認。
  2. CI/CD パイプラインでの監視
    • 自動テスト中に起動するコンテナが正しく実行されているかを即時チェック。
  3. トラブル発生時の調査
    • あるサービスが応答しない場合、docker ps -a で直近に異常終了していないかを確認。

実際の運用でのポイント

  • コンテナ名をつける習慣
    名前を分かりやすく設定すると、トラブルシューティング時に識別が容易。
  • 不要なコンテナを整理
    放置するとディスク容量を圧迫するため、定期的に docker container prune を実行。
  • 監視ツールと連携
    Prometheus や Grafana などと組み合わせることで、docker ps 情報を自動収集可能。

まとめ:Docker コンテナ 一覧 の重要性

本記事では Docker コンテナ 一覧 を確認するためのコマンドと、その詳細な使い方について解説しました。docker ps や docker container ls を使い分けることで、実行中・停止中を含めたコンテナ管理が効率的に行えます。さらに、表示される各カラムの意味を理解すれば、環境把握、トラブルシューティング、セキュリティ管理に役立ちます。

日々の開発や運用で Docker を扱う際には、ぜひこの記事で紹介した知識を活用し、Docker コンテナ 一覧 を自在に操れるようになりましょう。