ワンライナー
docker images | tail -n +2 | awk '{printf "%s:%s\n", $1, $2}' | sort | uniq | egrep -v '(<none>|my-image)' | xargs -P0 -L1 docker pull
Rootless Docker ではない Ubuntu ユーザーは sudo
を付けてください。
tail -n +2
は REPOSITORY:TAG
を除外するため。
sort | uniq
は要らないです。動作確認で使った。
除外したいイメージは my-image
のように追加していく。
egrep
後の結果は例えば以下のようになる。
alpine:3.11
debian:10-slim
node:12-slim
nvidia/cuda:9.2-base-ubuntu18.04
python:3.6-buster
python:3.6.9-slim-stretch
rust:slim-buster
tensorboard:latest
tensorflow/serving:latest
tensorflow/serving:latest-gpu
ubuntu:18.04
Pull が完了して不要になった <none>
タグのイメージを一括削除するには docker system prune
を実行すればオッケー。