分别进入这些容器,查看 /volume1、/volume2目录。
数据卷共享
如果要授权一个容器访问另一个容器的数据卷,可以使用-volumes-from 参数来执行。
数据卷容器
如果有一些持续更新的数据需要在容器之间共享,最好创建数据卷容器。
数据卷容器,其实就是一个正常的容器,专门用来提供数据卷供其它容器挂载的。
(1)创建一个名为 dbdata 的数据卷容器
docker run -d -v /dbdata --name dbdata docker-centos6.10-hadoop-spark(2)在其他容器中使用–volumes-from来挂载 dbdata 容器中的数据卷
docker run -d --volumes-from dbdata --name db1 docker-centos6.10-hadoop-spark
docker run -d --volumes-from dbdata --name db2 docker-centos6.10-hadoop-spark
这样就可以实现容器之间的数据共享。
分别进入这些容器,查看 /volume1、/volume2 目录。
4. 自制镜像并发布
保存容器修改,提交一个新的容器镜像
docker commit centos1 centos111
将现有的容器提交形成一个新的容器镜像,使用 docker images 可以看到 centos111 镜像。通过此方法,可以创建一个新的容器镜像。
查看镜像
docker imagesREPOSITORY TAG IMAGE ID CREATED SIZE
centos111 latest d691a75ee371 23 minutes ago 501.5 MB
根据新容器镜像创建容器
docker run -d --name='centos111' centos111查看容器
docker inspect centos111
导出和导入镜像
当需要把一台机器上的镜像迁移到另一台机器的时候,需要导出镜像与导入镜像。
机器A
docker save docker-centos6.10-hadoop-spark > docker-centos6.10-hadoop-spark2.tar
或
docker save -o docker-centos6.10-hadoop-spark docker-centos6.10-hadoop-spark2.tar使用 scp 命令同其他方式将 docker-centos6.10-hadoop-spark2.tar 拷到机器 B 上
机器B
docker load < docker-centos6.10-hadoop-spark2.tar
或
docker load -i docker-centos6.10-hadoop-spark2.tar
发布容器镜像
docker push centos6.8-lamp1
将容器发布到网络中。
5. docker 网络
docker 启动时会在宿主机器上创建一个名为 docker0 的虚拟网络接口。它会从RFC 1918 定义的私有地址中随机选择一个主机不用的地址和子网掩码,并将它分配给 docker0,默认选择 172.18.0.1/16,一个 16 位的子网掩码给容器提供了 65534 个 IP 地址。










