【编者的话】本文主要介绍了Docker Volume的原理以及使用方式,是Docker入门教程的延伸。作者通过从数据的共享、数据容器、备份、权限以及删除Volume五方面深入介绍了Volume的工作原理,从实战中帮助读者了解Volume。从Docker IRC频道以及stackoverflow的问题来看,很多人还不是很明白Docker Volume的工作原理。在这篇文章中,我会尽最大的努力来解释V            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-06-04 16:39:16
                            
                                204阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            ## Docker --volume-from 的使用及示例
在使用 Docker 进行应用容器化时,我们经常需要将容器与主机的文件进行共享,以便在容器内部进行持久化存储或数据共享。Docker 提供了多种方法来实现这个目的,其中之一就是使用 `--volume-from` 参数。本文将介绍 `--volume-from` 的使用方法,并通过示例代码演示其用法。
### 什么是 --volum            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2023-09-07 08:14:17
                            
                                102阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            ## Docker Volume-From: 数据共享和持久化的解决方案
在使用Docker容器时,我们常常需要将数据在不同容器间共享或持久化。为了解决这个问题,Docker提供了`docker volume-from`命令,使得容器之间可以共享数据卷。本文将详细介绍`docker volume-from`的用法和示例代码。
### 什么是Docker Volume-From?
`docke            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2023-07-31 18:09:09
                            
                                195阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            挂载图将宿主机目录挂载进docker可以通过以下两种起Docker容器的方式,把宿主机目录挂载进入容器的对应目录:docker run -v /docker_dir ...
docker run -v /home:/docker_dir ...当不指明宿主机目录时,Docker会默认在宿主机上创建一个临时目录: /var/lib/docker/volumes/[VOLUME_ID]/_data作为            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-02-18 20:18:12
                            
                                15阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            docker之容器数据卷一.容器数据卷docker容器运行的时候,会产生一系列的文件,那么我们希望容器产生的数据能提供给其他的容器使用,也就是说怎么实现容器间的数据的共享呢?这就需要用到我们所提到的容器数据卷。二.如何实现容器数据卷实现容器数据卷的方式非常的简单,首先我们需要创建一个容器,然后其他的容器使用 --volumes-from 命令挂载到这个容器(父容器)。具体的流程如下:do            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-06-08 15:50:03
                            
                                135阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            使用Docker创建数据容器翻译自: Data-only container madness1.什么是数据容器?数据容器就是本身只创建一个volume供其他容器共享,创建完后即退出,不执行任何任务。比如通过以下方式创建一个postgres容器。docker run --name dbdata postgres echo "Data-only container for postgres"该容器运行            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-07-25 07:17:59
                            
                                80阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            # OpenStack中的卷引导(Boot from Volume)
在OpenStack中,虚拟机的引导(boot)通常是从镜像(image)中进行的。然而,有时候我们希望能够从卷(volume)中进行虚拟机的引导,从而获得更大的灵活性和可移植性。OpenStack提供了“boot from volume”功能,使得虚拟机的引导可以基于卷。
## 什么是“boot from volume”?            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2023-10-12 13:16:41
                            
                                204阅读
                            
                                                                             
                 
                
                             
         
            
            
            
             首先要创建一个bootable volumecurl -i http://16.158.166.197:8776/v1/c24c59846a7f44538d958e7548cc74a3/volumes -X POST -H "X-Auth-Project-Id: openstack" -H "User-Agent: python-cinderclient" -H "Content-Ty            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-08-03 11:48:15
                            
                                54阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            storage driver 和 data volumestorage driver方式  docker info | grep "Storage Driver"  #查看系统底成文件系统
Ubuntu 用的 AUFS,底层文件系统是 extfs,各层数据存放在 /var/lib/docker/aufs。 
Redhat/CentOS 的默认 driver 是 Device Mapper,SUSE            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-12-01 13:30:04
                            
                                219阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            一、Volume当我们在编写Dockerfile文件时,会有这么个语句VOLUME这个语句的意思就是在容器和宿主机中建立一个共享目录,也就是容器可以把数据保存到这个目录下。这也是docker中容器数据持久化保存的一种方式。那么如何去使用这个Volume呢?我们先来做个小实验,这个实验是这样的,我们创建一个带有jdk的镜像,并与主机共享一个目录"/usr/mydata",然后把打包好的一个应用放在这            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-08-18 15:51:35
                            
                                189阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            文章目录一、DockerFile1.DockerFile简介2.常用DockerFile指令3.DockerFile简单使用4.DockerFile构建一个CentOS5.CMD和ENTRYPOINT命令的区别二、Docker容器数据卷1.容器与宿主机数据同步(1)指定路径挂载(2)具名挂载(使用较多)和匿名挂载2.容器间数据同步 一、DockerFile1.DockerFile简介Docker            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-09-25 02:32:00
                            
                                139阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            指定路径挂载:首先来讲一下指定路径挂载吧,这种挂载方式使我们之前一直使用的,就是通过 -v 宿主机目录:容器内目录,的方式食宿主机目录成为容器的数据源目录,两个目录的任何一方的数据发生变化另外一方的数据也会发生相应的变化。 匿名挂载:匿名挂载的方式是 -v 容器内路径 的方式,也就是只设置一个容器内的路径并没有设置宿主机目录。  docker run --name n            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-06-26 18:17:03
                            
                                1204阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            前言:数据卷和挂载还不是一回事,不过都可以实现数据分离:Link
附带例子的第一条,命令属于挂载:用docker volume ls是查不到的。附带例子的第二、三条,命令属于使用数据卷:用docker volume ls可以查看。卷的使用创建volume:docker volume create vol_name 查看volume:docker volume ls 可以看到当前存在的所有            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-08-17 14:53:39
                            
                                183阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            深入理解Docker Volume(二) 一开始,楼主就认为Volume是用来持久化的,但是这实际上不对,因为认为Volume是用来持久化的同学一定是认为容器无法持久化,所以有了Volume来帮助容器持久化,事实上,容器会一直存在,除非你删除他们. 容器是持久的,直到你删除他们,并且你只能这么做:$docker rm my_contariner  如果你没有执行此命令            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-08-28 10:42:06
                            
                                61阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            Volume 挂载前面我已经介绍过,容器技术使用了 rootfs 机制和 Mount Namespace,构建出了一个同宿主机完全隔离开的文件系统环境。这时候,我们就需要考虑这样两个问题:容器里进程新建的文件,怎么才能让宿主机获取到?宿主机上的文件和目录,怎么才能让容器里的进程访问到?这正是 Docker Volume 要解决的问题:Volume 机制,允许你将宿主机上指定的目录或者文件,挂载到容            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-11-26 16:33:57
                            
                                112阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            在使用docker的过程中,必然会遇到数据管理的问题,那么数据的持久化是必须要了解的。so,在容器中如何管理数据呢?数据卷(Data Volumes)、bind mount和数据卷容器,说到底可以看做数据卷的应用。第一种:数据卷什么是数据卷呢?volume也是绕过container的文件系统,直接将数据写到host机器上,只是volume是被docker管理的,docker下所有的volume都在            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-02-14 10:45:38
                            
                                297阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            volume就是目录或者文件,它可以绕过默认的联合文件系统,而已正常的文件或目录的形式存在宿主机上。实现持久化的数据保存。            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2017-05-23 22:12:05
                            
                                1006阅读
                            
                                                        
                                点赞
                            
                                                                             
                 
                
                             
         
            
            
            
            ## 实现 "docker --volume" 的流程
下面是实现 "docker --volume" 的整个流程的步骤表格:
| 步骤 | 描述 |
| --- | --- |
| 步骤一 | 安装 Docker |
| 步骤二 | 创建一个目录来存储需要挂载的文件 |
| 步骤三 | 运行 Docker 容器并挂载目录 |
| 步骤四 | 在容器中查看挂载的目录 |
接下来,我将解释每个            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2023-08-22 05:41:44
                            
                                41阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            # Docker Volume实现流程
本文将向刚入行的小白开发者介绍Docker Volume的实现过程。我们将通过以下步骤来完成这个任务:
```mermaid
flowchart TD
    A(创建Volume) --> B(启动容器)
    B --> C(使用Volume)
```
## 步骤说明
1. **创建Volume**:首先我们需要创建一个Docker Volum            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2023-08-18 12:16:42
                            
                                52阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            DockerVolumeDocker的文件系:Docker镜像是由多个文件系统(只读层)叠加而成.当我们启动一个容器的时候,Docker会加载镜像层并在其上添加一个读写层.如果运行中的容器修改了现有的一个已存在的文件,那该文件将会从读写层下的只读层复制到读写层,该文件的只读版本仍然存在,只是已经被读写层中该文件的副本所隐藏.当删除Docker容器,并通过该镜像重新启动时,之前的更改将会丢失.在Do            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2018-11-05 10:12:23
                            
                                1975阅读