linux虚拟网桥的特色:linux
docker0的地址自动划分nginx
自定义docker0地址web
sudo ifconfig docker0 192.168.200.1 netmask 255.255.255.0
自定义虚拟网桥docker
添加虚拟网桥ubuntu
sudo brctl addbr br0 sudo ifconfig br0 192.168.100.1 netmask 255.255.255.0
更改docker守护进程的启动配置vim
sudo vim /etc/default/docker DOCKER_OPTS="-b=br0" sudo service docker restart
默认:容许全部容器间互联bash
--icc网络
sudo docker run -it --name cct1 ubuntu bash
默认--icc=true,可是IP地址会发生变化学习
--link设计
sudo docker run -it --name cct2 --link=cct1:webtest ubuntu bash
连接容器,不会因IP变化致使连接不到
拒绝全部容器间互联
sudo docker run -it --name cct3 --icc=false ubuntu bash
容许特定容器间互联
sudo docker run -it --name cct4 --icc=false --iptables=true --link=cct1:webtest ubuntu bash
iptables配置
sudo iptables -I DOCKER -s 10.X.X.X -d 172.17.X.X -p TCP -dport 80 -j ACCEPT 或者 sudo iptables -I DOCKER -s 10.X.X.X -d 172.17.X.X -p TCP -dport 80 -j DROP
docker端口映射
sudo docker run -it --name cct5 -p 80 ubuntu bash apt-get update apt-get install -y nginx nginx ctrl+p sudo docker port cct5
设计目的:
特色
挂载数据卷并添加访问权限,权限默承认读写
sudo docker run -it -v ~/datavolume:/data:权限 ubuntu bash
挂载数据卷容器并添加访问权限,权限默承认读写
sudo docker run -it -v ~/datavolume:/data --name dv1 ubuntu bash sudo docker run -it --volume-from dv1 --name dv2 ubuntu bash
备份
sudo docker run -it -v ~/datavolume:/data --name dv1 ubuntu bash sudo docker run -it --volume-from dv1 -v ~/backup:/backup --name dv2 ubuntu tar cvf /backup/dv1.tar /data
还原
sudo docker run -it -v ~/datavolume:/data --name dv1 ubuntu bash sudo docker run -it --volume-from dv1 -v ~/backup:/backup --name dv2 ubuntu tar zxvf /backup/dv1.tar /data
主机配置
sudo vim /etc/network/interfaces auto br0 iface br0 inetstatic address 10.211.55.3 netmask 255.255.255.0 gateway 10.211.55.1 bridge_ports eth0
Docker容器配置
sudo vim /etc/default/docker DOCKER_OPTS="-b=br0 --fixed-cidr='10.211.55.128/20'"
sudo ovs-vsctl add-br obr0 sudo ovs-vsctl add-port obr0 gre0 sudo ovs-vsctl set interface gre0 type=gre options:remote_ip=192.168.1.100 sudo ovs-vsctl show sudo brctl addbr br0 sudo ifconfig br0 192.168.1.1 netmask 255.255.255.0 sudo brctl addif br0 obr0 sudo brctl show sudo vim /etc/default/docker DOCKER_OPTS="-b=br0" sudo ip route add 192.168.2.0/24 via 192.168.1.100 dev eth0 route
启动
weave launch
经过weave启动容器
weave run 192.168.1.2/24 -it --name wv1 ubuntu bash
经过极客学院中Docker容器的学习,对Docker容器有了一个初步的认识,之后会逐步深刻,容器化技术会愈来愈好。