Docker Compose の Network alias を使用して Container に別名でアクセスする
Docker Compose で複数の Nginx コンテナを設定し、Network alias を使用した名前解決をテストする方法のメモ。dig コマンドを使って、指定した Alias が正しく IP アドレスに解決されるかを確認します。
ogawa・August 27, 2024
次の内容で compose.yml を作成します。
version: "3"
services:
nginx1:
image: nginx:latest
nginx2:
image: nginx:latest
networks:
default:
aliases:
- nginx2.playground.localcontainer2 には aliases として container2.playground.local を指定しています。
それぞれの名前が解決できるかと確認してみます。
まず、docker compose を起動して、nginx1 に Shell ログインします。
docker compose up -d
docker compose exec nginx1 bashdig コマンドをインストールします。
apt update
apt install dnsutils -ynginx2 で名前解決できます。
→ dig +short nginx2
172.19.0.2nginx2.playground.local でも名前解決できます。
→ dig +short nginx2.playground.local
172.19.0.2いずれも同じ IP が解決できていることが確認できました。