Docker数据容器,boot2docker和本地文件系统
通过了解当前的Docker实践,我正在慢慢努力。 我在Mac上,并使用boot2docker。
我已经能够使用docker -v local / directory:container /目录方法将容器目录链接到我的本地文件系统。 太好了,现在我可以在本地Mac文件系统中轻松地编辑站点代码等内容,并立即将更改提供给我的容器(例如/ var / www / html)。
我现在试图将我的容器分成几个不同的问题。 例如,Web,数据库和文件(例如busybox)容器对于Wordpress站点将是有用的。 事情是,我不知道如何让我的文件容器定义卷,然后我可以链接到我的本地操作系统(类似于由boot2docker使用的-v本地/目录:容器/目录)。
这可能不是最有说服力的问题,因为我仍然通过学习Docker摸索,但是如果你能理解我想要实现的目标,我会非常感谢所提供的任何指导。
谢谢!
Docker卷用户指南
我将使用两个docker容器作为我的简单示例
marginalized_liskov
和plagiarized_engelbart
将主机目录挂载为数据卷(在运行时)
docker run -d -P --name marginalized_liskov -v /host/directory/context:/container/directory/context poop python server.py
marginalized_liskov
是容器的名称。
poop
不仅是我最喜欢的回文,而且还是我们创造的音量的名字。
"/host/directory/context"
是您要挂载的主机上的位置
"/container/directory/context"
是您希望您的容器中创build新卷的位置
python
当然是运行的应用程序
server.py
是为此示例提供给“python”的参数。
在容器中创build一个命名卷,并将另一个容器挂载到该容器中
docker create -v /poop --name marginalized_liskov training/postgres
docker run -d --volumes-from marginalized_liskov --name plagiarized_engelbart ubuntu
这创build了两个容器。
marginalized_liskov
获得一个名为poop
创build的卷我从postgres训练图像构build它,因为这是用户指南中使用的。 由于我们只是设置容器来容纳数据量,而不是托pipe应用程序,因此使用培训/ postgres映像在保持精简的同时提供了我们的function。
plagiarized_engelbart
使用--volumes-from
标志挂载来自marginalized_liskov
的卷。