标签:from volume 个数 uil container 数据共享 内容 node 一个
ocker 内部以及容器之间管理数据,在容器中管理数据主要有两种方式:
?
是什么发?
数据卷
可以在容器之间共享和重用数据卷
的修改会立马生效数据卷
的更新,不会影响镜像数据卷
默认会一直存在,即使容器被删除[root@rbtnode1 ~]# docker volume create my-container_vol
查看所有的 数据卷
[root@rbtnode1 ~]# docker volume ls
在主机里使用以下命令可以查看指定 数据卷
的信息
[root@rbtnode1 ~]# docker volume inspect my-container_vol
docker run
命令的时候,使用 --mount
标记来将 数据卷
挂载到容器里。在一次 docker run
中可以挂载多个 数据卷
web
的容器,并加载一个 数据卷
到容器的 /webapp
目录
在主机里使用以下命令可以查看 web
容器的信息
$ docker inspect web
$ docker volume rm my-vol
有点类似我们Redis里面的rdb和aof文件
? 能干嘛
? 容器的持久化,不会自动删除,没有垃圾回收处理,、
? docker rm -v 删除容器时一起删除数据卷
无主的数据卷可能会占据很多空间,要清理请使用以下命令
$ docker volume prune
容器间继承+共享数据
? 数据卷
? 容器内添加
? 直接命令添加
? 命令
? docker run -it -v /宿主机绝对路径目录:/容器内目录 镜像名
? 查看数据卷是否挂载成功
? 容器和宿主机之间数据共享
? 容器停止退出后,主机修改后数据是否同步
? 命令(带权限)
? docker run -it -v /宿主机绝对路径目录:/容器内目录:ro 镜像名
? DockerFile添加
? 根目录下新建mydocker文件夹并进入
? 可在Dockerfile中使用VOLUME指令来给镜像添加一个或多个数据卷
? File构建
? build后生成镜像
? 获得一个新镜像zzyy/centos
? run容器
? 通过上述步骤,容器内的卷目录地址已经知道
对应的主机目录地址哪??
? 主机对应默认地址
? 备注
? 数据卷容器
? 是什么
? 总体介绍
? 以上一步新建的镜像zzyy/centos为模板并运行容器dc01/dc02/dc03
? 它们已经具有容器卷
? /dataVolumeContainer1
? /dataVolumeContainer2
? 容器间传递共享(--volumes-from)
? 先启动一个父容器dc01
? 在dataVolumeContainer2新增内容
? dc02/dc03继承自dc01
? --volumes-from
? 命令
? dc02/dc03分别在dataVolumeContainer2各自新增内容
? 回到dc01可以看到02/03各自添加的都能共享了
? 删除dc01,dc02修改后dc03可否访问
? 删除dc02后dc03可否访问
? 再进一步
? 新建dc04继承dc03后再删除dc03
? 结论:容器之间配置信息的传递,数据卷的生命周期一直持续到没有容器使用它为止
标签:from volume 个数 uil container 数据共享 内容 node 一个
原文地址:https://www.cnblogs.com/bufufan/p/11993125.html