Cover image

複数の Docker コンテナをまとめて停止する

はじめに

複数のdocker-compose環境が立ち上がっていて、全部まとめて止めたいときに使えるコマンドです。


現在の起動状況を確認

docker ps

出力例

CONTAINER ID   IMAGE                    PORTS                                         NAMES
a1b2c3d4e5f6   my-app-app               0.0.0.0:5174->5173/tcp                        my-app-app-1
b2c3d4e5f6a7   pgvector/pgvector:pg16   0.0.0.0:5433->5432/tcp                        my-app-db-1
c3d4e5f6a7b8   sample-api               0.0.0.0:3000->3000/tcp                        sample-api-1
d4e5f6a7b8c9   postgres:16-alpine       0.0.0.0:5432->5432/tcp                        sample-db-1

全コンテナを一括停止

docker stop $(docker ps -q)

docker ps -q で起動中のコンテナIDを全取得して、docker stop に渡しています。


停止確認

docker ps
# CONTAINER ID   IMAGE     COMMAND   CREATED   STATUS    PORTS     NAMES
#(何も表示されなければOK)

特定のプロジェクトだけ止めたい場合

# そのプロジェクトのディレクトリで
docker compose down