Docker/Docker Compose

3.Docker Compose CLI

YOOANT 2026. 3. 15. 19:53
💡 docker-compose(ハイフンあり)で始まるコマンドは、すでにアップデートが終了している Docker Compose v1 のコマンドです。可能な限り使用を控え、v2 から導入された docker compose(スペースあり)で始まるコマンドを使用しましょう。 
以下のコマンドは、compose.yml が存在するディレクトリで実行する必要があります。

✅ Compose ファイルの作成

compose.yml

services:
  webserver:
    container_name: webserver
    image: nginx
    ports: 
      - "80:80"

✅ Compose ファイルで定義したコンテナの起動

$ docker compose up    # フォアグラウンドで実行
$ docker compose up -d # バックグラウンドで実行
  • -d : デタッチモード(バックグラウンド)で実行します。

✅ Docker Compose で起動したコンテナの確認

# compose.yml で定義されたコンテナのうち、実行中のものだけを表示
$ docker compose ps 

# compose.yml で定義されたすべてのコンテナを表示
$ docker compose ps -a

✅ Docker Compose のログ確認

# compose.yml で定義されたすべてのコンテナのログをまとめて出力
$ docker compose logs

✅ コンテナ起動前のイメージ再ビルド

$ docker compose up --build    # フォアグラウンドで実行
$ docker compose up --build -d # バックグラウンドで実行

compose.yml で定義したイメージのソースコードに変更があった場合、イメージをビルドし直してコンテナを起動しなければ、変更内容が反映されません。そのような場合には --build オプションを追加して使用します。

参考:docker compose up vs docker compose up --build

  • docker compose up : イメージが存在しない場合のみビルドしてコンテナを起動します。イメージがすでにある場合は、ビルドせずに既存のイメージを使用します。
  • docker compose up --build : イメージの有無にかかわらず、必ずビルドをやり直してからコンテナを起動します。

✅ イメージのプル(ダウンロード) / アップデート

$ docker compose pull

compose.yml で定義されたイメージをダウンロード、またはアップデートします。

  • ローカル環境にイメージがない場合は、新しくダウンロードします。
  • ローカルにイメージがある場合でも、Docker Hub のイメージと内容が異なる場合は、最新の状態にアップデートします。

✅ Docker Compose で利用したコンテナの終了と削除

$ docker compose down

日本語