Docker で、要らなくなったコンテナやボリューム(テンポラリファイル)、イメージをクリーンアップする方法

ボリュームのリストを表示

sudo docker volume ls -qf dangling=true

要らなくなったボリュームを削除

sudo docker volume rm $(sudo docker volume ls -qf dangling=true)

起動しているすべての Docker コンテナを終了

sudo docker kill $(sudo docker ps -q)

要らなくなったコンテナを名前を指定して削除

export DOCKER_CONTAINER='<YOUR_CONTAINER_NAME>'

for container_id in $(sudo docker ps --filter="name=${DOCKER_CONTAINER}" -q)   ; do
  sudo docker stop $container_id && sudo docker rm $container_id;
done

for container_id in $(sudo docker ps --filter="name=${DOCKER_CONTAINER}" -q -a); do
  sudo docker rm $container_id;
done

停止しているすべてのコンテナを削除

sudo docker rm $(sudo docker ps -a -q)

はぐれたすべてのイメージを削除('untagged/dangling' (<none>) とあるもの)

sudo docker rmi $(sudo docker images -q -f dangling=true)

要らなくなったイメージをリポジトリ名を指定して削除

export DOCKER_REPO='YOUR_DOCKER_REPOSITORY_NAME'

for image_id in  $(sudo docker images --format {{.ID}} ${DOCKER_REPO})  ; do
  sudo docker rmi $image_id
done

すべてのイメージを削除

docker rmi $(sudo docker images -q)

広告