Dockerコンテナの停止と削除スクリプト

スポンサーリンク
スポンサーリンク

はじめに

Dockerコンテナを停止・削除するためのスクリプトについて説明します。

使用しているスクリプトは、githubにvm-configurateとして公開しているのでgithubからダウンロードするかここからダウンロードしてください。

vm-configurateのフォルダ構成については、下のリンクを参照してください。

/guest-share/ubuntu-20.04/docker-stop.sh

Dockerコンテナを停止するためのスクリプトです。

スクリプトファイルの場所をカレントディレクトリにしています。

SCRIPT_DIR=$(dirname "$0")
cd "$SCRIPT_DIR"

docker-compose.ymlファイルのあるdockerディレクトリをカレントディレクトリにしています。

docker-compose.ymlについては、下のリンクを参照してください。

cd "docker"

現在のカレントディレクトリにあるdocker-compose.ymlに定義されているコンテナ停止しています。

docker-compose stop

/guest-share/ubuntu-20.04/docker/docker-destroy.sh

Dockerコンテナを破棄するためのスクリプトです。

スクリプトファイルの場所をカレントディレクトリにしています。

SCRIPT_DIR=$(dirname "$0")
cd "$SCRIPT_DIR"

現在のカレントディレクトリにあるdocker-compose.ymlに定義されているコンテナ停止しています。

docker-compose stop

 停止しているコンテナ、使用されていないボリューム、使用されていないネットワーク、使用されていないイメージを削除します。

docker system prune

使用されていないイメージを削除します。

echo "y" | docker image prune

使用されていないボリュームを削除します。

echo "y" | docker volume prune

使用されていないネットワークを削除します。

echo "y" | docker network prune

docker imagesでイメージの一覧を取得して、イメージを削除します。

echo "y" | docker rmi `docker images -q`

docker volumeでボリュームの一覧を取得して、ボリュームを削除します。

echo "y" | docker volume rm `docker volume ls -q`

docker networkでネットワークの一覧を取得して、ネットワークを削除します。

echo "y" | docker network rm `docker network ls -q

永続化したボリュームの保存先ディレクトリを削除しています。

rm -r ../../docker-volumes

Comment

スポンサーリンク