docker psコマンドで特定のカラムの情報を取り出す方法

docker のコンテナの情報を抜き出してアレコレしたい時があります。

例えば docker export するためにコンテナの ID だけ欲しい。とかです。

コンテナ ID を抜き出す

コンテナ ID であれば、次のように取り出すことができます。

docker ps -aq

特定の名前をもつコンテナを対象にする場合は次のようにします。

docker ps -aqf "name=YOUR_CONTAINER_NAME"
  • -q quiet モード。ID のみ出力する。
  • -a 動いている全てのコンテナを対象とする。
  • -f フィルター

ID 以外も抜き出したいの〜という場合

ID 以外、IMAGE や NAMES 情報を抜き出したい場合は次のコマンドが便利です。

docker ps --format '{{.Image}}'

↑ これは IMAGE カラムの情報を取り出します。

NAMES を対象にとりたい場合は .Image の箇所を .Names に変更します。

シェルスクリプトなどに組み込んで使う場合に大変便利です。

特定の名前のコンテナに絞りたいときは ↓ このような感じになります。

docker ps -af "name=YOUR_CONTAINER_NAME" --format '{{.Image}}'