我正在慢慢了解当前的Docker实践。我在Mac上,我正在使用boot2docker。
我已经能够使用docker -v local / directory:container / directory方法将容器目录链接到我的本地文件系统。太棒了,现在我可以在本地Mac文件系统中轻松编辑站点代码等内容,并立即将更改提供给我的容器(例如/ var / www / html)。
我现在正试图将我的容器分成不连续的问题。例如,Web,数据库和文件(例如busybox)容器对Wordpress站点很有用。事情是,我不知道如何让我的文件容器定义卷,然后我可以链接到我的本地操作系统(类似于-v local / directory:boot2docker使用的容器/目录)。
这可能不是最有说服力的问题,因为我仍在摸索学习Docker,但如果你能理解我想要实现的目标,我真的很感激所提供的任何指导。
谢谢!
答案 0 :(得分:3)
我将使用两个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"
是您希望在容器中创建新卷的位置
python
当然是运行
server.py
是为此示例提供给“python”的参数。
docker create -v /poop --name marginalized_liskov training/postgres
docker run -d --volumes-from marginalized_liskov --name plagiarized_engelbart ubuntu
这会创建两个容器
marginalized_liskov
获取一个名为poop
的卷,我是根据postgres培训图像构建的,因为这是用户指南中使用的。由于我们只是设置容器来容纳数据卷而不是托管应用程序,因此使用training / postgres图像可以提供我们的功能,同时保持精简。
plagiarized_engelbart
使用marginalized_liskov
标记从--volumes-from
安装卷。