容器目录挂载:
可以在创建容器的时候,将宿主机的目录和容器内的目录进行映射,可以实现宿主机和容器目录的双向数据自动同步;
作用:
通过目录挂载,能够轻松实现代码上传,配置修改,日志同步等需求
实现语法:
docker run -it -v 宿主机目录:/容器目录 镜像名
多目录挂载:
docker run -it -v 宿主机目录1:/容器目录1 -v 宿主机目录2:/容器目录2 镜像名
注意:
如果你同步的是多级目录,可能会出现权限不足的提示;
这是因为Centos7中的安全模块selinux把权限禁掉了,我们需要添加 --privileged=true来解决挂载目录没有权限的问题;
[root@base210 ~]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE centos 7 7e6257c9f8d8 8 weeks ago 203MB [root@base210 ~]# [root@base210 ~]# mkdir /hdata [root@base210 ~]# docker run -it -v /hdata:/cdata 7e6257c9f8d8挂载目录只读 (加上 :ro)readonly
docker run -it -v 宿主机目录:/容器目录:ro 镜像名