docker compose run コマンド

 Docker 命令大全Docker コマンド大全


docker compose run コマンドは、Compose ファイル全体で定義されたすべてのサービスを起動せずに、新しいコンテナを起動して特定のサービスを実行するために使用します。

docker compose run コマンドを使用すると、1回限りのコマンドの実行やデバッグなど、単一のサービス上でタスクを実行できます。

docker compose up との違いは、run コマンドは指定したサービスのみを実行し、それに依存する他のサービスを起動しない点です。

構文

docker compose run [OPTIONS] SERVICE [COMMAND] [ARGS...]
  • SERVICE: Compose ファイルで定義されたサービス名。
  • COMMANDとARGS: オプションの引数。コンテナ内で実行するコマンドとその引数を指定します。

OPTIONS オプション:

  • --rm: 実行後にコンテナを自動的に削除します。
  • -d: コンテナをデタッチモードで実行します。
  • -T: 疑似TTYを無効にします。

実例

1. 特定のサービスのコマンドを実行する

docker compose run web python manage.py migrate

このコマンドは、他のサービスを起動せずに、web サービスのコンテナ内で python manage.py migrate コマンドを実行します。

2. コンテナを自動的に削除する

docker compose run --rm web bash

このコマンドは web サービスを実行して Bash ターミナルを起動し、タスク完了後にコンテナを削除します。

docker compose run は、他のサービスの実行に影響を与えずに、サービス内で1回限りのタスクを実行するのに非常に適しています。


 Docker 命令大全Docker コマンド大全

その他の拡張