ワンライナー
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 を実行すればオッケー。