为了定义Docker卷,它们是可以安装在Docker容器上的文件系统。它们有助于保存数据,并且与容器的生命周期无关。Docker Volumes的主要优点之一是,它允许开发人员备份其数据,还允许在Docker容器之间轻松共享文件系统。启动Docker容器时,我们可以轻松地挂载卷。也可以将相同的卷安装到不同的容器中,这样可以轻松地在它们之间共享数据,并且可以使用简单的命令和标志轻松实现。
在本文中,我们将讨论如何在命令的帮助下创建,列出,检查,安装和删除Docker卷。
您可以使用create命令创建一个Docker卷。在执行命令时,Docker将在本地计算机上为卷创建特定目录。该目录位于路径/ var / lib / docker / volume中。
创建Docker卷的命令是-
sudo docker volume create <volume_name>
例如,如果要创建名称为myVolume的卷,则可以使用以下命令进行创建。
sudo docker volume create myVolume.
现在,您已经创建了一个Docker卷,如果要列出所有现有的Docker卷,则可以使用以下命令进行操作。
sudo docker volume list
一旦运行上述命令,将显示一个列表,其中包含驱动程序名称和所有现有卷的卷名称。
要检查特定的Docker卷,可以使用Docker inspect命令。它会列出有关Docker卷的所有详细信息,其中包括创建日期,安装点,驱动程序名称,卷名称等。
检查Docker卷的命令是-
sudo docker volume inspect <volume_name>
当您运行Docker run命令时,可以使用--mount标志轻松地将Docker Volume安装到Docker容器。您还可以将同一卷安装到多个Docker容器,所有容器将对该卷具有共享访问权限。该命令是
sudo docker run −−mount source=<name of volume>,destination=<path of a directory in container> <image_name>
例如,如果您想将名为myVolume的卷挂载到ubuntu容器中位于容器内/ usr / src / app /的位置,则可以使用以下命令-
sudo docker run −it −−mount source=myVolume,destination=/usr/src/app/ ubuntu
这将打开一个ubuntu bash,并将卷安装在指定位置。您可以通过转到容器内的指定位置来进行验证。
为了删除docker卷,您需要确保当时不使用该卷。如果运行的容器中已装入卷,则必须先停止容器,然后再卸下已装入的卷。停止容器后,可以使用以下命令删除该卷。
sudo docker rm <name of volume>
为了一次删除所有卷,需要确保当前没有任何卷在使用中,然后使用以下命令。
sudo docker volume prune
假设您要与多个Docker容器共享一些文件。在这种情况下,您可以将文件放入Docker卷中,使用多个Docker容器安装该卷,并获得对该卷的共享访问权限。让我们讨论如何做到这一点。
首先使用volume create命令创建一个卷,然后将该卷安装到特定的Docker容器。
例如,
sudo docker volume create myVolume
sudo docker run −it −−name=container1 −−mount source=myVolume,destination=/app ubuntu
上面的两个命令将创建一个名为myVolume的docker卷,并将此卷安装到目标/ app上名为ubuntu image的container1的容器。这也将打开该特定容器的重击。
在bash中,您可以看到在其中创建的名为/ app的目录。使用ls命令执行此操作。转到该目录并创建一个文件并退出bash。您可以使用以下命令。
ls cd app touch tutorialspoint.txt exit
之后,创建一个新容器并在该容器中装入相同的卷。您可以使用以下命令。
sudo docker run −it −−name=container2 −−mount source=myVolume,destination=/app ubuntu
这将创建另一个名为container2的容器,并在ubuntu映像的位置/ app处安装名为myVolume的卷。您可以使用ls命令验证相同的内容。进入/ app目录后,您将看到在container1中创建的同一tutorialspoint.txt文件。如果您在文件内部进行任何更改,它也会在其他容器中反映出来。
总而言之,在本文中,我们看到了创建,检查,列出和删除Docker卷的所有基本命令。我们还看到了如何通过将相同的卷装载到不同的Docker容器来在多个Docker容器之间共享文件。