投稿

[今さら始める Docker マスター 実践編 #3] Docker Compose入門

Docker Composeを使って複数コンテナのアプリケーションを定義し、まとめて起動する基本を学びます。

[今さら始める Docker マスター 実践編 #3] Docker Compose入門

Docker Composeとは?

Docker Composeは、複数のコンテナで構成されるアプリケーションをYAMLファイルで定義し、まとめて起動・停止できるツールです。

Webアプリケーションでは、アプリ本体、データベース、Redisなど、複数のサービスを同時に動かすことがよくあります。Composeを使うと、それらを一つの設定ファイルで管理できます。

compose.ymlの基本形

1
2
3
4
5
services:
  web:
    image: nginx:latest
    ports:
      - "8080:80"

この例では、nginxコンテナを起動し、ローカルの8080番ポートからアクセスできるようにしています。

よく使うコマンド

1
docker compose up

サービスを起動します。

1
docker compose up -d

バックグラウンドで起動します。

1
docker compose down

サービスを停止し、関連するコンテナを削除します。

Composeを使うメリット

  • 長い docker run コマンドを書かなくてよい
  • 複数サービスをまとめて管理できる
  • 設定をGitで共有できる
  • 開発環境を再現しやすい

version指定について

古い例では version: "3.8" のような指定を見かけます。現在のDocker Compose V2では、Compose Specificationに従うため、基本的には services から書き始めれば十分です。

学習のポイント

Docker Composeは、Dockerを実務で使うための重要なステップです。単体コンテナに慣れたら、Webアプリとデータベースを組み合わせるような小さな構成から試してみましょう。

この投稿は投稿者によって CC BY 4.0 の下でライセンスされています。