What is Docker Volume?
How to use Docker Volume!
Docker volume
Usage: docker volume COMMAND
Manage volumes
Commands:
create Create a volume
inspect Display detailed information on one or more volumes
ls List volumes
prune Remove all unused local volumes
rm Remove one or more volumes
Run 'docker volume COMMAND --help' for more information on a command.
- 直接使用命令挂载 -v
docker run -it -v hostDirectory:containerDirectory -p
Linux下挂载:docker run -it -v /home:/home centos bash
Windows下挂载:和Linux下的文件路径有区别docker run -it -v /d/zm/home:/home centos bash
- 匿名挂载 ```shell 不指定宿主机路径 [root@qq mysql]# docker run -d -P —name nginx03 -v /etc/nginx nginx #-P 随机端口 df6c74352f6a478e1dc5f16b3590e72ba7759ccd43b5b670ba77d7d05e19b347
[root@qq mysql]# docker volume ls #查看所有卷的情况 DRIVER VOLUME NAME local 7d3b5ef373129af03bc56e96499bd32e76fba00eaa953284bc7a6ddd16bcafac #这都是匿名的 local 51d1c577c2520e6b132de06ea90b438134da6bd4f98c38648a85bcd37f047c95
3. 具名挂载
```shell
[root@qq mysql]# docker run -d -P --name nginx04 -v juming-nginx:/etc/nginx nginx #-v 卷名:容器内路径
cae0cb1b8a8645dabb731d6bd4c081c2fe85df873a0978c4552003052462f26d
[root@qq mysql]# docker volume ls
DRIVER VOLUME NAME
local 7d3b5ef373129af03bc56e96499bd32e76fba00eaa953284bc7a6ddd16bcafac
local 51d1c577c2520e6b132de06ea90b438134da6bd4f98c38648a85bcd37f047c95
local juming-nginx
[root@qq mysql]# docker inspect juming-nginx ##可通过这个来看对应的nginx目录
[
{
"CreatedAt": "2020-05-19T09:35:10+08:00",
"Driver": "local",
"Labels": null,
"Mountpoint": "/var/lib/docker/volumes/juming-nginx/_data", ##在这
"Name": "juming-nginx",
"Options": null,
"Scope": "local"
}
]
这些文件都在/var/lib/docker/volumes/xxx/_data中
总结:
-v 容器路径 #匿名 在/var/lib/docker/volumes/xxx/_data 随机生成文件夹
-v 卷名:容器路径 #具名挂载
-v 宿主机路径:容器路径 #指定路径挂载
拓展:
-v 容器内路径:ro rw 改变读写的权限 ro readonly # 表示只读 rw readwrite #可读可写