title: Docker网络详解(二)——网络管理命令
date: 2015-11-29 19:54:17
tags: docker
categories: Docker Network
在Docker中,网络是很重要的部分,之前写过一篇有关Docker的几种网络模式的文章:Docker之四种网络模式,接下来的几篇文章将详细讲解Docker网络的原理和配置。
本篇文章介绍Docker网络管理方面的命令。
本篇涵盖的命令有:
* dockernetwork create
* docker network connect
* docker network ls
* docker network rm
* docker network disconnect
* docker network inspect
目录:
* 创建网络
* 将容器连接到网络
* 断开容器与网络的连接
* 移除网络
创建网络
之前的一篇文章中我已经写过有关Docker中创建网络的具体步骤,在此不再赘述。请参考:Docker之网络详解(一)
下面是追加的内容:
在创建网络时,Docker默认会为创建的网络创建子网,你可以通过--subnet
标识定义自己的子网。在创建bridge
网络时只能指定一个子网,创建overlay
网络时 可以指定多个子网。此外,还可以同时指定gateway
,--ip-range
,--aux-address
选项。
$ docker network create -d overlay
--subnet=192.168.0.0/16 --subnet=192.170.0.0/16
--gateway=192.168.0.100 --gateway=192.170.0.100
--ip-range=192.168.1.0/24
--aux-address a=192.168.1.5 --aux-address b=192.168.1.6
--aux-address a=192.170.1.5 --aux-address b=192.170.1.6
my-multihost-network
必须确保你指定的子网是没有重叠的,否则Docker会返回错误。
将容器连接到网络
你可以使用docker network connect
命令将容器连接到一个或多个自定义网络,连接到同一个网络的容器之间可以通过IP或名字进行通信。
下面的例子创建了两个容器,默认都连接到了docker0
网络:
$ docker run -itd --name=container1 busybox
18c062ef45ac0c026ee48a83afa39d25635ee5f02b58de4abc8f467bcaa28731
$ docker run -itd --name=container2 busybox
498eaaaf328e1018042c04b2de04036fc04719a6e39a097a4f4866043a2c2152
然后创建一个用于测试的bridge
网络:
$ docker network create -d bridge isolated_nw
f836c8deb6282ee614eade9d2f42d590e603d0b1efa0d99bd88b88c503e6ba7a
然后将container2连接到isolated_nw上&#x