Docker Composeで複数サービスを管理する方法
プログラムDocker,Docker Compose
はじめに
複数のサービスが連携するアプリケーション(例:Webサーバー+データベース)をローカルでセットアップするのは手間がかかります。Docker Composeを使えば、これらのサービスを簡単にまとめて管理できます。今回は、Composeを用いた環境構築を解説します。
Docker Composeとは?
Docker Composeは、複数のコンテナをまとめて定義・管理するツールです。docker-compose.yml
という設定ファイルを使って、すべてのサービスを記述します。
サンプル構成:Webサーバー+データベース
以下の構成を例に進めます:
- Nginx (Webサーバー)
- MySQL (データベース)
ステップ1: docker-compose.yml
の作成
プロジェクトルートにdocker-compose.yml
を作成し、以下を記述します:
version: '3.8'
services:
web:
image: nginx
ports:
- "8080:80"
volumes:
- ./html:/usr/share/nginx/html
db:
image: mysql:5.7
environment:
MYSQL_ROOT_PASSWORD: example
MYSQL_DATABASE: testdb
ステップ2: ディレクトリ構造の作成
以下のようにディレクトリを準備します:
project/
├── docker-compose.yml
└── html/
└── index.html
html/index.html
に簡単なHTMLファイルを作成します:
<!DOCTYPE html>
<html>
<head><title>Docker Compose Example</title></head>
<body><h1>Hello from Nginx!</h1></body>
</html>
ステップ3: コンテナの起動
以下のコマンドでComposeを実行:
ブラウザでhttp://localhost:8080にアクセスすると、Nginxが表示されます。
ステップ4: サービスの管理
Composeを使うと、以下のような操作も簡単にできます:
コンテナの確認:
コンテナの停止:
まとめ
Docker Composeを使えば、複数のコンテナを簡単に管理・連携できます。次回は、Composeで環境を拡張し、データ永続化やネットワーク設定を深掘りしていきます!
ディスカッション
コメント一覧
まだ、コメントがありません