docker卷ls列表为空
我使用的是docker 18.09.2版,版本为6247962 我运行一个容器并将一个主机目录装载到该容器docker卷ls列表为空,docker,docker-volume,Docker,Docker Volume,我使用的是docker 18.09.2版,版本为6247962 我运行一个容器并将一个主机目录装载到该容器 docker run -it -p 4444:8000 -v c:/py:/azima 27b4b21eeb64 /bin/sh 这创建了一个容器,并且主机目录c:/py已装载到/azima 我可以检查,创建,读取文件,它是工作 但是当我运行此命令时,从另一个powershell运行docker volume ls 这显示为空 检查容器会提供此信息(如果有帮助): 为什么未列出卷?这是因
docker run -it -p 4444:8000 -v c:/py:/azima 27b4b21eeb64 /bin/sh
这创建了一个容器,并且主机目录c:/py
已装载到/azima
我可以检查,创建,读取文件,它是工作
但是当我运行此命令时,从另一个powershell运行docker volume ls
这显示为空
检查容器
会提供此信息(如果有帮助):
为什么未列出卷?这是因为
-v c:/py:/azima
选项将使用将c:/py
装载到容器内的/azima
目录
绑定挂载基本上只是从容器内的主机绑定某个目录或文件,您已经这样做了
这就是为什么在检查容器时会看到“Type”:“bind”
而将创建您使用docker volume create volume\u NAME
手动创建的卷。它们是在/var/lib/docker/volumes
中创建的,只能通过名称引用
这些命名卷仅在命令中列出
当您检查连接到该卷的容器时,您将看到“Type”:“volume”
更多信息
希望这有帮助。Docker卷和Docker挂载是两件不同的事情 在绑定装载中,我们指定
主机路径
,它不显示在docker volumes ls
和卷中,我们指定docker卷名
,我们可以使用docker volumes ls
查看docker卷
卷:卷是存储Docker容器创建或使用的持久数据的首选方式。主机文件系统还存储卷,类似于绑定装载。但是,默认情况下,Docker完全管理它们并将它们存储在~/Docker/volumes下
docker volume create alpine_test
现在运行容器
docker run --rm -v alpine_test:/root alpine ash -c "touch /root/test.txt"
这将使用volumealpine\u test
创建一个文件,容器将终止
现在,如果我们运行另一个容器和列表文件
docker run -v alpine_test:/root alpine ash -c "ls /root/"
尽管如此,我们仍然可以看到上次创建的文件
如果容器终止,数据仍保留在卷中,可供以后使用
如果检查卷连接的容器,它将显示docker卷路径
docker检查集装箱\u id
"Mounts": [
{
"Type": "volume",
"Name": "alpine_test",
"Source": "/var/snap/docker/common/var-lib-docker/volumes/alpine_test/_data",
"Destination": "/root",
"Driver": "local",
"Mode": "z",
"RW": true,
"Propagation": ""
}
],
"Mounts": [
{
"Type": "bind",
"Source": "/home/test/",
"Destination": "/root",
"Mode": "",
"RW": true,
"Propagation": "rprivate"
}
],
绑定装载:绑定装载是存储在容器主机文件系统中任何位置的文件或文件夹,装载到运行的容器中。绑定装载与卷的主要区别在于,由于它可以存在于主机文件系统的任何位置,Docker之外的进程也可以修改它
docker run -v /home/test/:/test -it --rm alpine
对于装载,如果检查容器,您将看到主机装载路径位置
docker检查集装箱\u id
"Mounts": [
{
"Type": "volume",
"Name": "alpine_test",
"Source": "/var/snap/docker/common/var-lib-docker/volumes/alpine_test/_data",
"Destination": "/root",
"Driver": "local",
"Mode": "z",
"RW": true,
"Propagation": ""
}
],
"Mounts": [
{
"Type": "bind",
"Source": "/home/test/",
"Destination": "/root",
"Mode": "",
"RW": true,
"Propagation": "rprivate"
}
],
你的共享c驱动器吗?您使用的是哪个docker版本?对于新版本,您需要安装
c:/py:/azima
way@Adiiidocker版本18.09.2,内部版本6247962
。。是的,驱动器是共享的。。正如在帖子中所说的,除了列表之外,所有的东西似乎都很好用。好吧,那么你混合了两件事,让我解释一下答案!哦,你已经得到答案了:D