· 9 min read

Docker Composeを使ったクイックチュートリアル

Docker Composeは、複数のDockerコンテナを一元的に管理するためのツールです。これにより、複数のコンテナを一つのサービスとして扱うことができ、それぞれのコンテナの起動や停止、ネットワークの設定などを一括して行うことが可能になります。

このチュートリアルでは、Docker Composeを使って、複数のコンテナから成るアプリケーションを構築し、実行する方法を学びます。具体的には、Docker Composeの基本的な使い方から始め、次にDocker Composeでのアプリケーションの構築と実行、そしてDocker Composeの基本的なコマンドについて説明します。

Docker Composeを使うことで、開発環境のセットアップやテスト、デプロイなどを効率的に行うことができます。それでは、Docker Composeを使ったクイックチュートリアルを始めましょう。

Docker Composeとは

Docker Composeは、複数のDockerコンテナを定義し、連携させるためのツールです。YAMLファイルにサービスの設定を記述することで、一つのコマンドでアプリケーションとそれに関連するサービスを一緒に起動したり、停止したりすることができます。

Docker Composeは、開発環境の構築、テスト、ステージング環境のデプロイ、CIパイプラインの構築など、多岐にわたる用途で使用されます。また、Docker ComposeはDocker CLIとシームレスに連携し、Dockerの機能を最大限に活用することができます。

Docker Composeの主な特徴は以下の通りです:

  • 複数のコンテナを一元的に管理:Docker Composeを使用すると、複数のコンテナを一つのサービスとして扱うことができます。
  • YAMLファイルによる設定:Docker Composeでは、YAMLファイルにサービスの設定を記述します。これにより、設定をコードとして管理し、バージョン管理システムで追跡することが可能になります。
  • 一つのコマンドでの操作:Docker Composeでは、docker-compose upという一つのコマンドで、YAMLファイルに記述されたすべてのサービスを起動できます。同様に、docker-compose downですべてのサービスを停止し、関連するリソースを削除することができます。

以上がDocker Composeの基本的な概要となります。次のセクションでは、Docker Composeのインストールと設定方法について詳しく説明します。それでは、次に進みましょう。

Docker Composeのインストールと設定

Docker Composeのインストールと設定は非常に簡単です。以下に、一般的なLinux環境でのインストール手順を示します。

まず、Docker Composeの最新バージョンをダウンロードします。これは、以下のコマンドを使用して行います。

sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

次に、ダウンロードしたバイナリに実行権限を付与します。

sudo chmod +x /usr/local/bin/docker-compose

これで、Docker Composeのインストールは完了です。docker-compose --versionコマンドを実行して、正しくインストールされたことを確認できます。

Docker Composeの設定は、docker-compose.ymlというYAMLファイルに記述します。このファイルには、アプリケーションのサービス、ネットワーク、ボリュームなどの設定を記述します。基本的なdocker-compose.ymlファイルの構造は以下のようになります。

version: '3'
services:
  web:
    build: .
    ports:
     - "5000:5000"
  redis:
    image: "redis:alpine"

以上が、Docker Composeのインストールと設定の基本的な手順です。次のセクションでは、Docker Composeを使用してアプリケーションを構築し、実行する方法について詳しく説明します。それでは、次に進みましょう。

Docker Composeでのアプリケーションの構築と実行

Docker Composeを使用してアプリケーションを構築し、実行する方法は非常に直感的です。以下に、基本的な手順を示します。

まず、docker-compose.ymlファイルを作成します。このファイルには、アプリケーションの各サービスの設定を記述します。以下に、PythonのFlaskアプリケーションとRedisデータベースを使用した簡単な例を示します。

version: '3'
services:
  web:
    build: .
    command: python app.py
    volumes:
      - .:/code
    ports:
      - "5000:5000"
    depends_on:
      - redis
  redis:
    image: "redis:alpine"

次に、docker-compose upコマンドを実行します。このコマンドは、docker-compose.ymlファイルに記述されたすべてのサービスを起動します。

docker-compose up

これで、アプリケーションが起動します。ブラウザでlocalhost:5000にアクセスすると、Flaskアプリケーションのウェルカムページが表示されます。

アプリケーションの停止は、docker-compose downコマンドを使用します。

docker-compose down

以上が、Docker Composeを使用してアプリケーションを構築し、実行する基本的な手順です。次のセクションでは、Docker Composeの基本的なコマンドについて詳しく説明します。それでは、次に進みましょう。

Docker Composeの基本的なコマンド

Docker Composeには、アプリケーションの管理に役立つ多くの基本的なコマンドがあります。以下に、最も一般的に使用されるコマンドをいくつか紹介します。

  • docker-compose up:このコマンドは、docker-compose.ymlファイルに記述されたすべてのサービスを起動します。また、必要な場合はイメージのビルドやネットワーク、ボリュームの作成も行います。

  • docker-compose down:このコマンドは、docker-compose upで起動したすべてのサービスを停止し、関連するネットワーク、ボリュームを削除します。

  • docker-compose ps:このコマンドは、現在起動しているサービスの一覧を表示します。

  • docker-compose build:このコマンドは、サービスのDockerイメージをビルドします。

  • docker-compose logs:このコマンドは、サービスのログを表示します。

  • docker-compose pull:このコマンドは、サービスのイメージをDocker Hubからプルします。

  • docker-compose push:このコマンドは、サービスのイメージをDocker Hubにプッシュします。

以上が、Docker Composeの基本的なコマンドの一部です。これらのコマンドを使うことで、Docker Composeを使ったアプリケーションの管理がより簡単になります。次のセクションでは、これまでに学んだことをまとめます。それでは、次に進みましょう。

まとめ

このチュートリアルでは、Docker Composeを使ったアプリケーションの構築と実行について学びました。Docker Composeは、複数のDockerコンテナを一元的に管理するためのツールであり、開発環境の構築、テスト、ステージング環境のデプロイ、CIパイプラインの構築など、多岐にわたる用途で使用されます。

Docker Composeのインストールと設定は非常に簡単で、YAMLファイルにサービスの設定を記述することで、一つのコマンドでアプリケーションとそれに関連するサービスを一緒に起動したり、停止したりすることができます。

また、Docker Composeには、アプリケーションの管理に役立つ多くの基本的なコマンドがあり、これらを使うことで、Docker Composeを使ったアプリケーションの管理がより簡単になります。

以上が、Docker Composeを使ったクイックチュートリアルのまとめです。この知識を活用して、効率的な開発環境を構築し、素晴らしいアプリケーションを作成してください。それでは、Happy Dockering!

それでは、次回のチュートリアルでお会いしましょう。ありがとうございました!

    Share:
    Back to Blog