我有一个需要大量空间的容器,我希望它在服务器上使用专用的驱动器。
此答案全面解释了how to move docker data-root。但是是否可以有两个数据根并为第二个数据根分配一个特定的容器?
答案 0 :(得分:1)
您听起来好像有特定的基于容器的需求。 因此,将docker data-root移到另一个位置似乎不是这里的合适答案(尽管您仍然可以这样做)。
您需要的是“ volumes”。
将映像包装在 docker-compose 文件中,然后将一些容器目录作为卷挂载,以指向某个“主机”路径(在docker数据根外部)。实际上,它们必须是需要大量空间的目录,并指向具有足够空间的VG或外部安装点(例如 NFS)!
例如:
...
my-service:
image: my-image
volumes:
- "/path/within/host/opt/data/tmp/:/path/within/container/cache/:rw"
- "/path/within/host/opt/data/layers/:/path/within/container/layers/:rw"
- "/path/within/host/opt/data/logs/:/path/within/container/logs/:rw"
...
(请注意,由于它是默认值,因此可以在此处省略“ rw ”)