如何将主机数据挂载到不同的容器

时间:2018-01-29 03:13:12

标签: docker docker-volume

我需要将主机目录/data挂载到6个容器h1,h2,h3,h4,h5,h6

/data是安装在主机上的外部硬盘。 6个容器可以轻松打开和关闭。

6个容器将进入他们自己的/data子目录,以独立分析数据并在本地生成新数据。所有子目录都没有任何关系。

相关问题是here,但没有给出首选答案。

怎么做?以下是我现在拥有的容器和图像。

$ docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES d9bd9334a1e7 ubuntu "/usr/bin/bash" 19 hours ago Up 18 hours h6 23679fe7252b ubuntu "/usr/bin/bash" 19 hours ago Up 18 hours h5 e2864e38e746 ubuntu "/usr/bin/bash" 19 hours ago Up 18 hours h4 c8996a304638 ubuntu "/usr/bin/bash" 19 hours ago Up 18 hours h3 9acd2a223d86 ubuntu "/usr/bin/bash" 19 hours ago Up 18 hours h2 5690b8c7b6da ubuntu "/usr/bin/bash" 2 days ago Up 12 hours h1

$ docker images REPOSITORY TAG IMAGE ID CREATED SIZE docker.io/hello-world latest f2a91732366c 2 months ago 1.85 kB docker.io/ubuntu 27 422dc563ca32 2 months ago 252 MB docker.io/ubuntu latest 422dc563ca32 2 months ago 252 MB

1 个答案:

答案 0 :(得分:0)

如果这些容器已经正在运行,则无法轻松地向其添加/数据 除了可能docker cp

但最佳做法仍然是:

  • 使用/ data已存在的图像(Dockerfile ADD)
  • 或使用现有图像并启动容器,但使用-v(卷)选项。请参阅 Use volumes

https://docs.docker.com/engine/admin/volumes/images/types-of-mounts-volume.png