当前位置: 首页 > 科技观察

Docker基础知识:命名和匿名挂载简介

时间:2023-03-12 06:11:11 科技观察

今天就和大家聊一聊Docker的签名和匿名挂载的相关知识,一起来学习吧!匿名坐骑1.含义匿名挂载是指定容器中的路径。dockersrun每次挂载一个目录,宿主机都会自动创建一个带有随机字符串的目录。目录/var/lib/docker/volumes/随机字符串。注意:里面的_data目录与对应容器中的目录是同步的。2、匿名挂载示例运行容器dockerrun-d-p8000:80--namenginxtest-v/etc/nginxnginx查看nginxtest容器目录dockerinspect--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/_dataHosthostpath:Source:/etc/nginx3.FilesynchronizationtestHosthosttestcommand#Enterthemountdirectory,createa1.txtfilecd/var/lib/docker/volumes/6d05e4012610c5427b589f38009ade0d90bd5009896d251f545979ddb736e1b8/_数据ouch1.txt容器内部测试命令:dockerexec-itnginxtest/bin/bashcd/etc/nginxtouch22.txtmount是mount1的意思,容器内部:named指定一个bodymeaning的名字方便后续与容器的对应和后续的运维,也便于找到挂载目录2.命名挂载示例#运行容器dockerrun-d-p8001:80--namenginxtest02-vnginxtest02:/etc/nginxnginx#查看容器挂载目录dockerinspect--format="{{json.Mounts}}"4cd1e3241698查看容器挂载内容。[{“类型”:“卷”未定义“名称”:“nginxtest02”未定义“来源”:“/var/lib/docker/volumes/nginxtest02/_data”未定义“目的地”:“/etc/nginx”未定义“驱动程序":"local"undefined"Mode":"z"undefined"RW":trueundefined"Propagation":""}]返回参数说明:容器路径:Destination:/etc/nginxhostpath:Source:/var/具体lib/docker/volumes/nginxtest02/_data的文件同步和匿名挂载一样,可以自己测试。查看挂载数据卷命令dockervolumels:4.在_data目录下汇总宿主机host的挂载目录对应的同步文件。双向实时同步。指定具体的挂载目录名称,方便查找和管理。如果你的容器很多,都是不可读的字符串,可维护性会很差。建议使用命名挂载。