docker runをdocker imagesで表示した一覧から選択して実行する方法


Docker runをdocker imagesで表示した一覧から選択して実行する方法

docker imagesでコンテナ名やIDを確認してからdocker runを実行するのは面倒なので、ワンコマンドで実行する方法を紹介します。

やり方

以下をコピペして利用してください (-it, --rmはなくても可)

#インストール
brew install fzf
#実行
docker run -it --rm $(docker images | awk '{print $1":"$2}' | fzf)

利用イメージ

解説

docker images

dockerイメージの一覧を表示します。

| awk '{print $1":"$2}'

標準入力を受け取り、各行を "{1列目}:{2列目}" の形式で出力し直します。

| fzf

標準入力から受け取ったデータから1行を選択して出力します。

$(docker images | awk '{print $1":"$2}' | fzf)

上記の組み合わせにより、選択したイメージ名を出力します

docker run -it --rm $(docker images | awk '{print $1":"$2}' | fzf)

一覧から選択したDockerイメージを実行します。