一.
創建自定義網絡
docker network create <network name>
也可以自己指定網段,如
docker network create --subnet=172.172.0.0/24 myapp
二.
在docker-compose 文件中增加網絡設置,使不同compose文件的容器位於同一局域網
例如:上面我們創建了名為myapp的網絡,這一步在docker-compose 文件中通過external選項指定使用這個網絡
networks:
default:
external:
name: myapp
這樣,啟動起來的docker容器就會在同一局域網里,可以通過指定ip進行相互通信
三.
注意:如果同一局域網中進行socket通信,容器A訪問容器B沒有指定容器B的局域網ip而是指定了宿主機的ip,那么容器B識別到的對端ip是該局域網的網關ip而不是容器A的局域網ip