docker 存储卷 以及 docker 容器使用储存卷进行数据持久化)
-v 当前目录$PWD
方式1:
docker run -d --name=wenchao --mount type=bind,src=$PWD/wwwroot,dst=/usr/share/nginx/html nginx
方式2:
- $PWD/sendtoken.php:/www/ssp/pages/sendtoken.php
(1)查看现有的存储卷
docker volume ls # 查看现有的存储卷
(2)查看现有的存储卷
docker volume create dashu86 # 创建自定义名称的存储卷
(3)清除未使用的存储卷
docker volume prune -f # 清除未使用的存储卷
(4)删除指定的存储卷
docker volume rm dashu86 # 删除指定的存储卷
(5)查看存储卷的详细信息
docker volume inspect dashu86 # 查看存储卷的详细信息
容器使用存储卷进行数据持久化:
docker container run -v dashu86:/usr/share/nginx/html -d --name web01 nginx:1.20.1 #将存储卷"dashu86"挂载到容器,若不存在则直接创建,默认权限为rw。
docker container run -v dashu86:/usr/share/nginx/html:ro -d --name web02 nginx:1.20.1 # 将"dashu86"存储卷以只读的方式挂载。
docker container run -v dashu87:/usr/share/nginx/html:rw -d --name web03 nginx:1.20.1 # 若存储卷"dashu87"不存在,则会自动创建。
docker container run -v /usr/share/nginx/html -d --name web04 nginx:1.20.1 # 将容器的"/usr/share/nginx/html"路径作为挂载点和本地的随机存储卷关联。
补充知识
docker volume rm `docker volume ls -q` # 删除所有的存储卷
docker container rm -fv `docker container ps -qa` # 删除所有的容器及匿名存储卷。
docker run -d -v /baimei/data:/usr/share/nginx/html:ro --name web01 nginx:1.20.1 # 将宿主机的路径以只读的方式挂载到容器的挂载点
docker container run --volumes-from web01 -d --name web03 nginx:1.20.1 # 创建容器web03时使用和web01相同的存储卷。