首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Docker卷:在远程主机上持久化数据

Docker卷:在远程主机上持久化数据
EN

Stack Overflow用户
提问于 2018-02-06 09:54:36
回答 1查看 2.6K关注 0票数 7

https://docs.docker.com/storage/#more-details-about-mount-types

卷的良好用例

  • 当您希望将容器的数据存储在远程主机或云提供商上时,而不是本地存储。

这是如何完成与码头体积?不是主机/var/lib/docker下的坞卷吗?

你能给我一个“码头卷创建”的例子吗?如何利用它?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-04-10 20:55:07

是的,卷是在/var/lib/docker/卷/下创建的,因此需要将该卷链接到要持久化的文件夹或要持久化的数据所在的位置。

示例:

您的映像名为ImageExample,项目位于/var/www/MyProject/下。

首先,您需要创建新卷并指定名称。

代码语言:javascript
复制
$ docker volume create --name VolumeExample

# if you run: docker volume ls, they list all your volumes available

$ docker volume ls
DRIVER              VOLUME NAME
local               JbpmVolume1
local               VolumeExample

其次,您必须将新卷链接到容器中的文件夹。

代码语言:javascript
复制
$ docker run -v VolumeExample:/var/www/MyProject/ -p 8080:8080 MyImage

其中run是创建容器的命令,-p是映射本地和主机端口,MyImage是本例中使用的映像,VolumeExample是前面创建的卷,/var/www/MyProject/是需要持久化的示例文件夹。

您也可以使用此卷存储应用程序配置、数据库数据或配置等等。也许,取决于您需要存储什么,您可以使用绑定挂载或卷,或者如果您的主机在linux中,则可以使用tmpfs挂载。

简单到此,您可以在docker网页中阅读更多有关内容,但基本上这是如何处理卷的。每次停止/启动或创建/删除容器时,卷中的数据都将保持不变。

我是这样做的,因为这不是你想要的“幸福之路”。您必须在将数据存储在文件夹中之前挂载,因为当您挂载卷时,该文件夹将为空,因为卷是空的。如果在挂载卷之前文件夹中有数据,则数据对您来说是不可见的。因此,这取决于您的项目创建卷的方式,但基本上,使用这两个命令,您可以将卷挂载到主机容器中。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48640084

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档