ステータスと名前でコンテナをフィルタリング
このステップでは、docker psコマンドの--filterフラグを使用して、コンテナのリストをステータスや名前でフィルタリングする方法を学びます。多くのコンテナがある場合に特定のコンテナを見つける際に便利です。
まず、別のコンテナを起動しましょう。今回は特定の名前を付けます。
docker run -d --name my-nginx nginx
docker run -d --name my-nginx nginxコマンドは、nginxイメージを基に新しいコンテナをデタッチドモードで実行し、my-nginxという名前を割り当てます。
docker pull nginxは明示的に必要ありません。docker runはローカルにイメージがない場合自動的に取得します
次に、ステータスでフィルタリングして実行中のコンテナのみをリスト表示しましょう。
docker ps --filter status=running
このコマンドは現在「running」状態のコンテナのみを表示します。my-nginxコンテナがリストに表示されるはずです。
続いて、名前でコンテナをフィルタリングします。
docker ps -a --filter name=my-nginx
このコマンドは(-aにより停止済みも含む)my-nginxという名前のすべてのコンテナをリスト表示します。my-nginxコンテナがそのステータスと共に表示されるはずです。
フィルタを組み合わせることも可能です。例えば、特定の名前で実行中のコンテナをリスト表示する場合:
docker ps --filter status=running --filter name=my-nginx
これはmy-nginxコンテナが現在実行中の場合のみ表示します。