具名挂载和匿名挂载

匿名卷挂载 : -v 的时候只指定容器内的路径 如下面这个:/etc/nginx

1.docker run -d -P --name nginx -v /etc/nginx nginx

2.查看所有卷 docker volume ls

这里发现,这就是匿名挂载,只指定容器内的路径,没有指定容器外的路径

再启动一个具名挂载 docker run -d -P --name nginx03 -v juming-nginx:/etc/nginx nginx

-P就是随机指定端口 具名挂载语法: -v 卷名:容器内路径

再次查看所有卷 docker volume ls 发现有名字了,就是刚才取的,这就是具名挂载

显示卷 juming-nginx 的信息 docker volume inspect juming-nginx

所有docker容器内的卷,没有指定目录的情况下都是在 /var/lib/docker/volumes/卷名/_data 中,所有数据都存放在_data里面

进入cd /var/lib/docker

接着进入cd volumes 我们的卷都在volumes 中

进入juming-nginx

进入_data目录,可以看到我们nginx的配置文件,已经拿到了我们的配置文件

我们通过具名挂载可以方便找到我们的卷,大都数情况都使用具名挂载

那么如何确定是 匿名挂载,具名挂载,还是指定路径挂载呢?

-v 容器内路径 匿名挂载

-v 卷名:容器内路径 具名挂载

-v /宿主机路径:容器内路径 指定路径挂载(只要带斜杠/的就是指定路径挂载)

拓展:

我们经常看到通过-v 容器内路径:ro rw 改变读写权限

ro readonly 只读

rw readwrite 可读可写

一旦这个设置了容器权限,容器对我们挂载出来的内容就限制了,这个是相对容器来说的,假如我们把这个容器挂载出来了,再这个容器中就无法操作了(只针对ro这个,rw有权限)

docker run -d -P --name nginx03 -v juming-nginx:/etc/nginx:ro nginx

docker run -d -P --name nginx03 -v juming-nginx:/etc/nginx:rw nginx

ro ---只要看到ro 就说明这个路径只能通过宿主机来操作,容器内部无法操作,因为他是只读的权限,没有写的权限

初识Dockerfile

Dockerfile就是创建自己的镜像,也能通过hub.docker分享自己自定义的镜像

dockerfile就是用来构建docker镜像的构建文件!命令脚本!先来体验一下

通过这个脚本可以生成镜像,镜像是一层一层的,脚本也是一个个的命令,每个命令都是一层

dockerfile就是再创建镜像的时候连同挂载

1.创建文件

进入文件 cd docker-test-volume/

创建一个dockerfile文件 vim dockerfile 建议名字就叫dockerfile

FROM centos

VOLUME ["volume01","volume02"]

CMD echo "-------end--------"

CMD /bin/bash

3.docker build -f /home/docker-test-volume/dockerfile1 -t zzq/centos:1.0 .

查看docker images

启动自己写的镜像

这个目录就是我们生成镜像的时候自动挂载的,就是数据卷目录

这个卷和外部一定有一个同步的目录

相关推荐
gentle_ice2 分钟前
leetcode——矩阵置零(java)
java·算法·leetcode·矩阵
stevewongbuaa29 分钟前
一些烦人的go设置 goland
开发语言·后端·golang
撸码到无法自拔1 小时前
MATLAB中处理大数据的技巧与方法
大数据·开发语言·matlab
whisperrr.1 小时前
【JavaWeb06】Tomcat基础入门:架构理解与基本配置指南
java·架构·tomcat
island13141 小时前
【QT】 控件 -- 显示类
开发语言·数据库·qt
sysu631 小时前
95.不同的二叉搜索树Ⅱ python
开发语言·数据结构·python·算法·leetcode·面试·深度优先
hust_joker2 小时前
go单元测试和基准测试
开发语言·golang·单元测试
火烧屁屁啦2 小时前
【JavaEE进阶】应用分层
java·前端·java-ee
m0_748257462 小时前
鸿蒙NEXT(五):鸿蒙版React Native架构浅析
java
我没想到原来他们都是一堆坏人2 小时前
2023年版本IDEA复制项目并修改端口号和运行内存
java·ide·intellij-idea