2026年6月28日
2026年6月28日
Docker Composeのoverlayネットワークを設定する方法
はじめに
この記事では、Docker Composeを使用して overlay ネットワークを設定する方法について解説します。overlay ネットワークは、複数の Docker クラスタ間で共有される仮想ネットワークを作成し、コンテナ間での通信を容易にするための技術です。特に、開発環境や CI/CD 環境で複数のコンテナを管理する場合に有用です。
症状・背景
このテーマが必要になる主な場面は以下の通りです:
- 一つ以上のコンテナ間で共有リソースやサービスを使用したい
- 複数の Docker クラスタ間での通信が必要である
- コンテナ間での安全な通信を確保する必要がある
手順・設定方法
ステップ1: overlay ネットワークを作成
# overlay ネットワークを作成します
docker network create --driver=overlay my_overlay_network
# 作成した overlay ネットワークの詳細を確認します
docker network inspect my_overlay_network
ステップ2: Docker Composeファイルで overlay ネットワークを使用する
# docker-compose.yml ファイルを作成し、overlay ネットワークを使用します
version: '3.8'
services:
web:
image: nginx:latest
networks:
- my_overlay_network
networks:
my_overlay_network:
external: true
ステップ3: overlay ネットワーク内のコンテナ間でサービスを共有
# Docker Compose を使用してサービスを起動します
docker-compose up -d
# overlay ネットワーク内のコンテナを確認します
docker ps --filter "network=my_overlay_network"
ステップ4: トラブルシュート/監視
# コンテナの状態を監視します
docker container ls -a
# overlay ネットワークの詳細情報を取得します
docker network inspect my_overlay_network
注意事項
- overlay ネットワークは、同一クラスタ内でしか機能しないので注意が必要です。
- 大規模なネットワーク構成では、パフォーマンス上の課題があるため、適切に設計することが重要です。
- セキュリティ面でも注意し、必要に応じてネットワークのアクセス制御を設定する必要があります。
まとめ
1. overlay ネットワークを作成: docker network create --driver=overlay コマンドを使用します。
2. Docker Composeファイルで overlay 使用: external: true を指定することで外部に定義されたネットワークを利用できます。
3. コンテナ間サービス共有: overlay ネットワークを指定してサービスを起動すると、コンテナ間での通信が可能になります。
4. トラブルシュート/監視: コンテナの状態やネットワーク情報を確認することで問題を迅速に解決することが可能です。
関連記事: