Docker创建容器时目录挂载
简介
在创建容器的时候,将宿主机的目录与容器内的目录进行映射,这样我们就可以实现宿主机和容器目录的双向自动同步
作用
Docker可以使用cp命令来实现数据传递,这种方式非常麻烦,通过容器目录挂载,能够轻松实现代码上传,配置修改,日志同步等需求
命令
单个目录
拥有全部权限
1 | docker run -it -v /宿主机目录:/容器目录 镜像名 |
挂载目录只读
1 | docker run -it -v /宿主机目录:/容器目录:ro 镜像名 |
多个目录
拥有全部权限
1 | docker run -it -v /宿主机目录:/容器目录 -v /宿主机目录2:/容器目录2 镜像名 |
挂载目录只读
1 | docker run -it -v /宿主机目录:/容器目录:ro -v /宿主机目录2:/容器目录2:ro 镜像名 |
注意
同步的是多级目录,可能会出现权限不足的提示,这是因为Centos7中的安全模块selinux把权限禁掉了,我们需要在命令的后面添加--privileged=true
来解决挂载的目录没有权限的问题
PS.
一般来说,都是创建容器时进行目录挂载,对于已经创建好的容器如果忘了挂载目录但是又想挂载目录,方法有两种:①提交这个容器为新的镜像,然后创建这个新镜像的容器同时进行目录挂载(此方式较简单)②修改这个容器的配置文件
具体步骤查看博客:Docker修改已创建容器的挂载目录
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 LeDao's Blog!
评论