Docker Volume数据卷
查看数据卷命令 docker volume --help
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
创建数据卷
docker volume create html
查看已存在数据卷docker volume ls
DRIVER VOLUME NAME
local b454567071717a862b64d95791165d89e5d98c03eec23637f31b56d476078461
local html
查看具体数据卷详情
leo@lijianshundeMacBook-Pro ~ docker volume inspect html
[
{
"CreatedAt": "2023-01-24T12:02:55Z",
"Driver": "local",
"Labels": {},
"Mountpoint": "/var/lib/docker/volumes/html/_data", # 挂载点
"Name": "html",
"Options": {},
"Scope": "local"
}
]
删除数据卷
leo@lijianshundeMacBook-Pro ~ docker volume rm html
html
删除未使用的数据卷
leo@lijianshundeMacBook-Pro ~ docker volume prune
WARNING! This will remove all local volumes not used by at least one container.
Are you sure you want to continue? [y/N] y
Deleted Volumes:
b454567071717a862b64d95791165d89e5d98c03eec23637f31b56d476078461
Total reclaimed space: 101B
数据卷挂载
创建一个nginx容器,修改html目录内的index.html内容,nginx的html目录在/usr/share/nginx/html ,把这个目录挂载在html这个数据卷上,方便操作。使用-v参数挂载卷
创建容器并挂载数据卷到容器内的html目录
leo@lijianshundeMacBook-Pro ~ docker run --name mynginx -p 80:80 -d -v html:/usr/share/nginx/html nginx:1.23
eb810b3b2914397f5a46672bc35594488808d038275e6355d6357ab792472db2
leo@lijianshundeMacBook-Pro ~ docker inspect html
[
{
"CreatedAt": "2023-01-24T12:23:09Z",
"Driver": "local",
"Labels": null,
"Mountpoint": "/var/lib/docker/volumes/html/_data", #挂载目录
"Name": "html",
"Options": null,
"Scope": "local"
}
]
结果mac找不到挂载目录,先运行这条命令
docker run -it --privileged --pid=host debian nsenter -t 1 -m -u -n -i sh
然后输入 ls 查看当前路径下目录信息
然后 cd /var/lib/docker/volumes
leo@lijianshundeMacBook-Pro ~ cd /var/lib/docker/volumes/html/_data
cd: no such file or directory: /var/lib/docker/volumes/html/_data
✘ leo@lijianshundeMacBook-Pro ~ docker run -it --privileged --pid=host debian nsenter -t 1 -m -u -n -i sh
Unable to find image 'debian:latest' locally
latest: Pulling from library/debian
c345c9e441f5: Downloading
latest: Pulling from library/debian
c345c9e441f5: Pull complete
Digest: sha256:534da5794e770279c889daa891f46f5a530b0c5de8bfbc5e40394a0164d9fa87
Status: Downloaded newer image for debian:latest
/ # ls
bin etc lib proc srv var
boot grpcfuse.ko media root sys
containers home mnt run tmp
dev init opt sbin usr
/ # cd /var/lib/docker/volumes
/var/lib/docker/volumes # ls
backingFsBlockDev html metadata.db
/var/lib/docker/volumes #
开启mysql服务,并挂载
docker run -p 3306:3306 --name mysql \
-v /mydata/mysql/log:/var/log/mysql \
-v /mydata/mysql/data:/var/lib/mysql \
-v /mydata/mysql/conf:/etc/mysql \
-e MYSQL_ROOT_PASSWORD=root \
-d mysql:5.7







网友评论