文件挂载,匿名挂载和具名挂载
# 命令 docker run -it -v 宿主机绝对路径目录:容器内目录 镜像名 # 测试
[root@kuangshen ~]# docker run -it -v /home/ceshi:/home centos /bin/bash
两者都是将内容挂载出来,只不过一个是挂载的有明确名称。一个是自动生成
# 匿名挂载 -v 容器内路径 docker run -d -P --name nginx01 -v /etc/nginx nginx
# 匿名挂载的缺点,就是不好维护,通常使用命令 docker volume维护 docker volume ls
# 具名挂载 -v 卷名:/容器内路径 docker run -d -P --name nginx02 -v nginxconfig:/etc/nginx nginx
# 查看挂载的路径
[root@kuangshen ~]# docker volume inspect nginxconfig [ { "CreatedAt": "2020-05-13T17:23:00+08:00", "Driver": "local", "Labels": null, "Mountpoint": "/var/lib/docker/volumes/nginxconfig/_data", "Name": "nginxconfig", "Options": null, "Scope": "local" } ]
# 怎么判断挂载的是卷名而不是本机目录名? 不是/开始就是卷名,是/开始就是目录名
# 改变文件的读写权限
# ro rw 读写权限是针对docker容器来说的,如果为ro 则容器只能读文件不能写文件。 想修改文件必须要宿主机去修改文件
# ro: readonly # rw: readwrite # 指定容器对我们挂载出来的内容的读写权限
docker run -d -P --name nginx02 -v nginxconfig:/etc/nginx:ro nginx
docker run -d -P --name nginx02 -v nginxconfig:/etc/nginx:rw nginx