当前位置:首页 > IT科技

Docker 基础: 具名、匿名挂载介绍

今天给大家聊聊docker具名、基础具名介绍匿名挂载的匿名相关知识,一起来学学吧!挂载​​​​​

匿名挂载​

1、基础具名介绍含义​

匿名挂载就是匿名指定容器内路径,dockers run 每挂载一个目录就会宿主主机自动创建一个随机字符串的挂载目录。目录/var/lib/docker/volumes/随机字符串。基础具名介绍​

注意:里面的匿名_data目录和对应容器内目录进行同步​。

2、挂载匿名挂载示例​

运行容器

docker run -d -p 8000:80 --name nginxtest -v /etc/nginx nginx

查看nginxtest容器目录挂载情况

docker inspect --format="{ { json .Mounts}}" 7880ad6076b1

查看挂载内容如下:​

[

{

"Type":"volume"undefined

"Name":"6d05e4012610c5427b589f38009ade0d90bd5009896d251f545979ddb736e1b8"undefined "Source":"/var/lib/docker/volumes/6d05e4012610c5427b589f38009ade0d90bd5009896d251f545979ddb736e1b8/_data"undefined

"Destination":"/etc/nginx"undefined

"Driver":"local"undefined

"Mode":""undefined

"RW":trueundefined

"Propagation":""

}

]

返回参数说明:​

​容器内路径:Destination:/var/lib/docker/volumes/6d05e4012610c5427b589f38009ade0d90bd5009896d251f545979ddb736e1b8/_data​宿主主机路径:Source:/etc/nginx​​

3、基础具名介绍文件同步测试

宿主主机测试命令

#进入挂载目录,网站模板匿名创建 1.txt 文件

cd /var/lib/docker/volumes/6d05e4012610c5427b589f38009ade0d90bd5009896d251f545979ddb736e1b8/_data

touch 1.txt

容器内部测试命令:

docker exec -it nginxtest /bin/bash

cd /etc/nginx

touch 22.txt

宿主主机:

容器内部:

具名挂载

1、挂载含义

具名挂载就是基础具名介绍挂载的同时指定一个有具体含义的名字,方便后续和容器对应以及后续的匿名运维,便于查找挂载目录。挂载

2、具名挂载示例

#运行容器

docker run -d -p 8001:80 --name nginxtest02 -v nginxtest02:/etc/nginx nginx

#查看容器挂载目录

docker inspect --format="{ { json .Mounts}}" 4cd1e3241698

查看容器挂载内容。

[

{

"Type":"volume"undefined

"Name":"nginxtest02"undefined

"Source":"/var/lib/docker/volumes/nginxtest02/_data"undefined

"Destination":"/etc/nginx"undefined

"Driver":"local"undefined

"Mode":"z"undefined

"RW":trueundefined

"Propagation":""

}

]

返回参数说明:容器内路径:Destination:/etc/nginx宿主主机路径:Source:/var/lib/docker/volumes/nginxtest02/_data具体的文件同步和匿名挂载一样,大家可以自己测试。

查看挂载数据卷命令

docker volume ls:

4、香港云服务器总结

宿主主机挂载目录对应同步的文件在_data 目录里面。双向实时同步。指定具体的挂载目录名,便于查找和管理,如果你的容器比较多,都是不可读的字符串,那么可维护性会比较差,建议采用具名挂载。

云服务器

分享到:

滇ICP备2023006006号-16