目录

Docker-Docker-Compose-network-网络-compose

Docker 》》Docker Compose 》》network 网络 compose

docker 默认的网络 三种模式

https://i-blog.csdnimg.cn/direct/ba4044f2ad5c4e298ff43152e2482e6c.png

https://i-blog.csdnimg.cn/direct/714acee95abc4290a7841b6bde322dcd.png

https://i-blog.csdnimg.cn/direct/dc069139a6d9452e8a47afebb631446e.png

https://i-blog.csdnimg.cn/direct/fbefbcd07a174127a15e35f61d4d70a9.png

# 列出所有当前主机上或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名称

https://i-blog.csdnimg.cn/direct/10595282370e4a93a4f10f7fb68b35e1.png

》》查看网络详情

docker network inspect network名称

https://i-blog.csdnimg.cn/direct/0669b65f2faa4653b8ea2b615036811e.png

》》 创建网络

https://i-blog.csdnimg.cn/direct/83735df0a19243949949ecc5ddb641a7.png

https://i-blog.csdnimg.cn/direct/994eea20c7aa4466bc66f2ff00892516.png

compose 配置一个已存在的网络

# 创建网络
docker network create my_network
# 查看 已经存在的网络
docker network ls
services:
  redis:
    image: redis: latest
    container_name: redis
    restart: always
    # 如果 不端口映射 宿主机是访问不了这个redis的
    ports:
      - '6400:6379'
    volumes:
     - ./redis/redis/conf:/etc/redis/
     - ./redis/data:/data
     - ./redis/logs:/logs
    command: redis-server /etc/redis/redis.conf
networks:
  default:
    external:
      name: my_network

https://i-blog.csdnimg.cn/direct/6491180ced9a4fa7aa3b932077098c39.png

https://i-blog.csdnimg.cn/direct/a432951731b84e80bc24c4558913ac09.png

https://i-blog.csdnimg.cn/direct/6462dba51ae24a99a87035fcb65a8d9c.png

如果不配置网络

docker 会自动创建一个 以为docker-compose.yml 文件所在的文件夹名称 + _default 的网络名称,同时容器加入这个网络

https://i-blog.csdnimg.cn/direct/10595282370e4a93a4f10f7fb68b35e1.png

》》查看网络详情

docker network inspect network名称

https://i-blog.csdnimg.cn/direct/0669b65f2faa4653b8ea2b615036811e.png

https://i-blog.csdnimg.cn/direct/754b55df0aca4fd1842229a954505552.png

https://i-blog.csdnimg.cn/direct/e6b90c8f4f334a288641a75b8b34372c.png

https://i-blog.csdnimg.cn/direct/bdcaddfe667f4b13be8ef946b8cf8d05.png

https://i-blog.csdnimg.cn/direct/ebbb48334b334ef3ad146e73d6564bd3.png

https://i-blog.csdnimg.cn/direct/c0636d7c13fb496f91c74596d56ff2a8.png

https://i-blog.csdnimg.cn/direct/32b52b93684c404bacf343bd5b07c323.png