Docker学习笔记(5)——Docker libnetwork

Docker libnetwork插件化网络功能

1.Docker网络相关命令

ls: 列出所有网络

$ docker network ls

create:创建一个网路

$ docker network create [OPTIONS] NETWORK

rm:删除网络

$ docker network rm NETWORK

connect将容器连接到一个已存在的网络

$ docker network connect [OPTIONS] NETWORK CONTAINER

disconnect将容器从网路中移除

$ docker network disconnect [OPTIONS] NETWORK CONTAINER

查看网络信息

$ docker network inspect [OPTIONS] NETWORK [NETWORK ...]

2.构建跨主机容器网络

1).配置网络信息管理数据库

$ sudo docker run -d \
    -p "8500:8500" \
    -h "consul" \
    progrium/consul -server -bootstrap

2).配置Docker主机,保证每台主机都安装Docker

确保这两台主机都可以通过ip互访,另外,都能访问到数据库节点的8500端口

配置主机的Docker服务启动选项

DOCKER_OPTS="DOCKER_OPTS --cluster-store=consul://<CONSUL_NODE>:8500 --cluster-advertise=eth0:2376"

重启Docker服务

$ sudo service docker restart

3).创建网络

现在主机n1,n2上列出网络

n1: $ sudo docker network ls
n2: $ sudo docker network ls

在任意节点上创建网络multi,即可完成跨主机创建

n1: $ sudo docker network create -d overlay multi

创建后再查看网络

4).测试网路

n1上启动容器c1,连接到multi网络上

n1: $ sudo docker run -it --name=c1 --net=multi busybox
n1: $ ip a

发现其中一个eth0已经连接到multi网络上

n2上启动容器,同样也连接到multi网络上

n2: $ sudo docker run -it --name=c2 --net=multi busybox

通过ping测试

n2: $ ping c1

猜你喜欢

转载自blog.csdn.net/qq_37423198/article/details/78700633