docker 的具名挂载与匿名挂载
大家好,今天我们分享一下docker 的具名挂载与匿名挂载
以这条命令举例
[root@localhost ~]# docker run -d -P --name nginx02 -v /etc/nginx/ nginx
d8e9b9084cf884e7e0d11c560c3f50d94f2d4a2d9c77fccb3f52b5cfd8e55392
[root@localhost ~]#
这里我们就没有给它指定端口: 它对应的外网端口是随即的
查看一下正在运行的容器:
[root@localhost ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
d8e9b9084cf8 nginx "/docker-entrypoint.…" 11 minutes ago Up 11 minutes 0.0.0.0:49153->80/tcp, :::49153->80/tcp nginx02
6d6fa6a4c6d7 5d0da3dc9764 "/bin/bash" 32 hours ago Up 32 hours nice_panini
[root@localhost ~]#
对应的外网端口是49153
我们可以使用浏览器上访问:http://192.168.1.12:49153
这是docker数据卷命令的帮助:
[root@localhost ~]# docker volume --help Usage: docker volume COMMANDManage volumesCommands:create Create a volumeinspect Display detailed information on one or more volumesls List volumesprune Remove all unused local volumesrm Remove one or more volumesRun 'docker volume COMMAND --help' for more information on a command.
这些都是匿名的挂载 ,因为没有给它起名字
DRIVER VOLUME NAME
local 3f0cc224bb62dceae38c25d6eaee76512b39ec786590099f4b2930674640756f
local 8e16818bb95e740e59e5ef920e54751eb64db44f4cf43841a9c45aa6ad6646cc
local 686e9b7764c19581aea3107940fc28c68121759ce28b31fabc0fce00659ff7ca
local 882c0d1810e3ac6fddabcff2c65f1022605f450a6c49504edf57e78de14da1e5
local 1490f17c760b935d926fb1fedc7de4e0e07f1084fcf8c769c672d50f43757f8f
local 471762be4837d40ad175b7cfe74b81a51b4b3e752cb6f15e7e79d09ffc5f65fc
local af4dc486d8335ec0e524c0e30a0ae037ef05dfa7a4ed3e4e0dd59954c5084a9e
local c26b0f08ebdb140d91cb450313e9e314239c1c3553a612e6534154006aa19744
local c52728c97a7ee672216ccb2d4392fa83bc480dd9646ddb5577e1124eb98e15b6
这里写一个具名挂载
[root@localhost ~]# docker run -d -P --name nginx02 -v juming-nginx:/etc/nginx nginx
看最后的一行,就是具名挂载
[root@localhost ~]# docker volume ls
DRIVER VOLUME NAME
local 3f0cc224bb62dceae38c25d6eaee76512b39ec786590099f4b2930674640756f
local 8e16818bb95e740e59e5ef920e54751eb64db44f4cf43841a9c45aa6ad6646cc
local 686e9b7764c19581aea3107940fc28c68121759ce28b31fabc0fce00659ff7ca
local 882c0d1810e3ac6fddabcff2c65f1022605f450a6c49504edf57e78de14da1e5
local 1490f17c760b935d926fb1fedc7de4e0e07f1084fcf8c769c672d50f43757f8f
local 471762be4837d40ad175b7cfe74b81a51b4b3e752cb6f15e7e79d09ffc5f65fc
local af4dc486d8335ec0e524c0e30a0ae037ef05dfa7a4ed3e4e0dd59954c5084a9e
local c26b0f08ebdb140d91cb450313e9e314239c1c3553a612e6534154006aa19744
local c52728c97a7ee672216ccb2d4392fa83bc480dd9646ddb5577e1124eb98e15b6
local juming-nginx
显示数据卷的具体信息
[root@localhost ~]# docker volume inspect juming-nginx
[{"CreatedAt": "2022-03-05T18:16:53+08:00","Driver": "local","Labels": null,"Mountpoint": "/var/lib/docker/volumes/juming-nginx/_data","Name": "juming-nginx","Options": null,"Scope": "local"}
]
docker 容器中所有的卷,在没有指定目录的情况下,都在var/lib/docker/volumes/juming-nginx/_data",
我们可以通过具名挂载找到卷的位置,大多数情况下,我们使用具名挂载
关于docker的挂载问题,有三个比较容易混淆的概念: (区分的方式)
1.具名挂载:-v 参数 卷名:容器内路径
2.匿名挂载:-v 参数后面 没有写上容器之外的地址, docker 自己会在docker内部给你找个位置
3.指定路径挂载: -v /宿主机路径::容器内路径
这里有一个权限问题:
[root@localhost ~]# docker run -d -P --name nginx03 -v juming-nginx:/etc/nginx:rw nginx
6590da464b6ea5cecf58f1cfcdfe2df35092383adb7aaddac4ca5d463367c979
rw :可读可写的权限
ro : 可读权限
[root@localhost ~]# docker run -d -P --name nginx03 -v juming-nginx:/etc/nginx:ro nginx
这个会对我们挂载出来的内容进行限定
ro 权限说明命令只可以被宿主机操作,容器的内部将无法进行操作
平时不需要动它
好了,有关于docker 的具名挂载与匿名挂载就到这里了,谢谢大家
docker 的具名挂载与匿名挂载相关推荐
- docker笔记之具名挂载与匿名挂载
文章目录 一.具名挂载和匿名挂载是什么? 二.使用步骤 1.具名挂载 2.匿名挂载 3.指定路径挂载 4.扩展 总结 一.具名挂载和匿名挂载是什么? 具名挂载的顾名思义就是有名字,这个名字是我们自己给 ...
- 【Docker】7、数据卷详解:具名挂载、匿名挂载、初识DockerFile、数据卷容器
1.什么是容器数据卷? docker的理念回顾 将应用和环境打包成一个镜像! 如果数据都在容器中,那么容器删除,数据就会丢失!需求:数据可以持久化.如:MySQL,容器删除了,MySQL数据可以存储在 ...
- 挂载(具名挂载、匿名挂载)
1.指定名称挂载 docker run -it -v /home/ceshi:/home centos /bin/bash 2.具名挂载(指定了一个名字):带/代表绝对路径开头 -v 卷名:容器内路径 ...
- docker具名挂载与匿名挂载
文章分为三部分: 什么是具名.匿名和指定路径挂载 匿名挂载 具名挂载 什么是具名.匿名和指定路径挂载 -v 容器内路径 #匿名挂载 -v 卷名 : 容器内路径 #具名挂载 -v 宿主机路径 : 容器内 ...
- (五)具名和匿名挂载
匿名挂载:卷挂载只写容器里面的路径,不写容器外的路径 如何确定是匿名挂载还是具名挂载,还是指定路径挂载 -v 容器内路径 #匿名挂载 -v ...
- Docker 入门系列(4)- Docker 数据管理(挂载目录、挂载文件、数据卷挂载、数据卷共享、数据卷删除、数据卷容器备份和恢复)
基于底层存储实现,Docker 提供了三种适用于不同场景的文件系统挂载方式:Bind Mount.Volume 和 Tmpfs Mount. Bind Mount 能够直接将宿主操作系统中的目录和文件 ...
- Docker 容器文件拷贝及目录挂载
Docker 容器文件拷贝及目录挂载 10.Docker:容器文件拷贝 目标: 掌握文件拷贝命令 将linux宿主机中的文件拷贝到容器内可以使用命令: # docker cp 需要拷贝的文件或目录 容 ...
- docker环境下安装nginx、挂载文件、docker容器中文乱码
docker环境下安装nginx.挂载文件.docker容器中文乱码 文章目录 docker环境下安装nginx.挂载文件.docker容器中文乱码 1.首先下载docker的nginx镜像 2.查看 ...
- linux挂载到哪个分区,Linux中直接挂载硬盘和挂载分区有什么区别?
1.问题 Linux中直接挂载硬盘和挂载分区有什么区别? 比如 /dev/sdb 的硬盘,直接mkfs.ext4 /dev/sdb 后mount 使用, 和 先fdisk 分区 ,在 mkfs ...
最新文章
- 金额阿拉伯数字转换为中文大写
- kmeans及模型评估指标_模型评估常用指标
- 排序算法总结之归并排序
- NoSQL数据库探讨之一 - 为什么要用非关系数据库?
- matlab数据序列的几种滤波器
- SAP中的Currency Converting Factor
- 用ConfigParser模块读写conf配置文件
- 最全的cisco ios下载,思科ios下载
- 不值钱的软件人才[转]
- 编写高质量代码的50条黄金守则-Day 04(首选字符串插值)
- Nginx篇--解读nginx配置
- 自己用GO语言编写的AliDDNS动态域名更新服务,routeros
- 【移动通信】信号强度单位dB和dBm
- java adsl 拨号_[zt]利用脚本实现ADSL自动拨号上网
- Apollo 的3D障碍物感知解析
- postgresql 不区分大小写 模糊查询
- rpcx服务框架浅析3-服务发布流程
- AutoJs学习-包名查看器
- MP2451 VOUT计算公式 表
- GraphQL是什么,入门了解看这一篇就够了!