自定义容器名称:
docker run --name -i -t ubuntu /bin/bash
docker ps -a
数据卷的使用
数据卷其实就是容器和宿主机目录之间的映射。
具体实现:
sudo docker run -v ~/datavolumn:/data -it centos /bin/bash
echo "it's just a test for datavolumn.">/data/test.txt
exit
cat /datavolumn/test.txt
it's just a test for datavolumn.
说明:目录如果不存在,不用担心,会自动创建的!
也可以使用dockerfile创建数据卷。
使用容器作为数据卷
--volumes-from 容器名称
启动已有的容器:
docker start|restart container1 启动
docker attach container1 登入
数据卷的备份
docker run --volumes-from container1 -v ~/backup:/backup -name container2 centos tar cvf /backup/back.tar /datavolume1
具体就是在新容器container2中创建2个数据卷,2个数据卷分别映射在宿主机和container1,最后备份文件在宿主机目录下。
数据卷的还原
只不过把命令替换为还原命令。
docker run --volumes-from container1 -v ~/backup:/backup -name container2 centos tar xf /backup/back.tar /datavolume1
docker的网络管理
安装bridge-utils
brctl show 查看网桥
sudo ifconfig docker0 ip netmask 255.255.255.0 修改默认网卡地址
自定义网桥
sudo brctl addbr br0
sudo ifconfig br0 ip netmask 255.255.255.0
sudo vim /etc/default/docker
DOCKER_OPS="-b=br0"
sudo service docker restart
docker与外部网络连接:
sudo sysctl net.ipv4.conf.all.forwarding
net.ipv4.conf.all.forwarding = 1
通过iptables工具来控制
查看端口映射:
docker port container1
docker容器的互联:
--link=container:alias
docker run container2 --link=container1:web centos
原理:相当于给容器起一个域名,这样就能使用域名访问了。
拒绝容器的访问
sudo vim /etc/default/docker
DOCKER_OPTS="-cc=false,--iptables=true"
service docker restart
这样就可以使用iptables来控制容器间的访问。