docker 默認的網絡 三種模式
# 列出所有當前主機上或Swarm集群上的網絡
docker network ls#查看網絡詳情
docker network inspect network名稱# 清除未使用的docker網絡
docker network prune -f# 創建網絡
ocker network create -d bridge 網絡名稱
docker network create –subnet=192.168.50.0/24 網絡名稱
docker network create –subnet=192.168.50.0/24 –ip-range=192.168.50.0/24 網絡名稱
docker network create –subnet=192.168.10.0/24 –internal br1#將容器添加進一個已有網絡
docker network connect bridge 容器名或ID
docker network connect --ip 172.17.0.18 network名稱【必須是自己創建的才可以】 容器名或ID#查看某一個容器中的網絡,可以將一個容器連接到多個網絡中。
docker inspect 容器名或ID
docker inspect --format='{{json .NetworkSettings.Networks}}' 容器名或ID
# 獲取容器IP
docker inspect --format='{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' 容器名或ID#將容器從網絡中移除
docker network disconnect bridge 容器名或ID# 刪除一個網絡
docker network rm network名稱
》》查看網絡詳情
docker network inspect network名稱
》》 創建網絡
compose 配置一個已存在的網絡
# 創建網絡
docker network create my_network
# 查看 已經存在的網絡
docker network ls
services:redis:image: redis: latestcontainer_name: redisrestart: always# 如果 不端口映射 宿主機是訪問不了這個redis的ports:- '6400:6379'volumes:- ./redis/redis/conf:/etc/redis/- ./redis/data:/data- ./redis/logs:/logscommand: redis-server /etc/redis/redis.conf
networks:default:external:name: my_network
如果不配置網絡
docker 會自動創建一個 以為docker-compose.yml 文件所在的文件夾名稱 + _default 的網絡名稱,同時容器加入這個網絡
》》查看網絡詳情
docker network inspect network名稱