2026年10月2日
2026年10月2日
DockerコンテナのIPアドレスを確認する方法
はじめに
Dockerを使用してアプリケーションをデプロイする場合、しばしばコンテナ間での通信や外部からのアクセスが必要になります。その際には、コンテナのIPアドレスを確認することが重要です。本記事では、Dockerコンテナの内部と外部IPアドレスを確認する方法について解説します。
症状・背景
このテーマが必要になる主な場面は以下の通りです:
- ローカル環境で開発中にコンテナ間での通信やデータ交換を行う場合
- クラスター化されたDocker Swarmでサービス間の通信を設定する際に各コンテナのIPアドレスが必要な場合
- Docker Desktop上で動作しているコンテナから外部へアクセスするために必要なIPアドレスを確認する必要がある場合
手順・設定方法
ステップ1: コンテナの内部IPアドレスを確認する
# DockerコンテナIDまたは名前を指定してネットワーク情報を表示
docker inspect <コンテナID或いは名前> | grep -E '"IPAddress":'
ステップ2: ローカルホストからコンテナへのSSH接続に必要なIPアドレスを確認する
# Docker Desktopで動作しているコンテナの内部ネットワークIPアドレスを取得
docker inspect $(docker ps -q) | grep -E '"IPAddress":' | awk -F '"' '{print $4}'
ステップ3: ネットワークサービスから外部へ公開するためのIPアドレスを確認する
# Swarmクラスターで各コンテナのIPアドレスとポート番号を取得
docker service ps <サービス名> | awk 'NR==1; NR>1 {print $4}'
ステップ4: 実践/トラブルシュート/監視
# すべてのコンテナのネットワーク情報を一覧表示
docker network inspect bridge
注意事項
docker inspectコマンドを使用する際は、コンテナIDや名前を正確に指定することが重要です。- Docker Desktopで動作しているコンテナのIPアドレスは、ホストからコンテナへSSH接続する際に必要となります。
- Swarmクラスターでは、各サービスの公開可能なIPアドレスとポート番号がリストされます。
まとめ
1. 内部IPアドレス確認: docker inspectコマンドを使用してコンテナのネットワーク情報を確認します。
2. 外部アクセス用IP: ローカルホストからコンテナに接続する際には、コンテナの内部IPアドレスが必要です。
3. Swarmクラスターでの公開: Swarmクラスターで各サービスが外部からどのようにアクセスできるかを確認するために、docker service psコマンドを使用します。
4. ネットワーク設定情報: docker network inspectコマンドを使用して、Dockerのネットワーク設定情報を一覧表示します。
関連記事: