本篇内容主要讲解“Docker数据存储Bind mounts怎么使用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Docker数据存储Bind mounts怎么使用”吧!
默认容器的数据的读写发生在容器的存储层,当容器被删除时其上的数据将会丢失。所以我们应该尽量保证容器存储层不发生写操作,为了实现数据的持久化存储我们需要选择一种方案来保存数据,当前有以下几种方式:
volumes
bind mounts
tmpfs mounts
下图展示了这三种技术:
bind mounts
bind mounts模式和volumes非常相似,不同点在于bind mounts模式是将宿主机上的任意文件或文件夹挂载到容器,而volumes本质上是将docker服务管理的一块区域(默认是/var/lib/docker/volumes下的文件夹)挂载到容器。
bind mounts的使用和volumes类似,也是通过-v
或--mount
参数将宿主机文件挂载容器中。下面是一个例子:
使用--mount
参数时,需要指定type=bind
:
$ docker run -d \ --name=nginxtest \ --mount type=bind,source=/usr/local/web,destination=/usr/share/nginx/html \ nginx:latest
上面的例子将宿主机上的/usr/local/web文件夹挂载到容器中的/usr/share/nginx/html文件夹。
或者使用-v
参数:
$ docker run -d \ --name=nginxtest \ -v /usr/local/web:/usr/share/nginx/html \ nginx:latest
挂载成功后,容器从/usr/share/nginx/html目录下读取或写入数据,实际上都是从宿主机的 /usr/local/web目录中读取或写入数据。因此volumes或bind mounts也可以看作是容器和宿主机共享文件的一种方式。
如果你使用bind mounts挂载宿主机目录到一个容器中的非空目录,那么此容器中的非空目录中的文件会被隐藏,容器访问这个目录时能够访问到的文件均来自于宿主机目录。这也是bind mounts模式和volumes模式最大的行为上的不同。
到此,相信大家对“Docker数据存储Bind mounts怎么使用”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。