docker组成,可以在已经安装的卷内安装一个文件夹?

当使用compose进行开发时,我的应用程序被安装在/ var / www / html里面:

volumes: - ./app:/var/www/html 

我的本地副本需要生产网站上的所有图像,这是相当多的,所以我不想将它们存储在我的小ssd中,但在一个大的外部磁盘。

所以我的图像位于我的/媒体/存储/ bigdisk /图像。

可以在已经挂载的/ var / www / html里面挂载这个位置?

这种方式似乎并不奏效:

 volumes: - ./app:/var/www/html - /media/storage/bigdisk/images:/var/www/html/images 

这应该正常工作,这个解决scheme的唯一缺点是docker将在./app/images创build额外的目录 – 所以它可以挂载图像卷。

对于这个目录树:

 - app --- index.php - docker-compose.yml - media --- picture.png 

docker-compose.yml

 version: '2' services: app: image: ubuntu volumes: - ./app:/var/www/html - ./media:/var/www/html/images 

你得到:

 $ docker-compose run --rm app find /var/www/html /var/www/html /var/www/html/index.php /var/www/html/images /var/www/html/images/picture.png 

即使当./app/images目录在本地存在一些内容时也是如此。 如果不存在,docker会在这里创build一个空的目录root:root persistence(如果容器以root:root身份运行)。

Docker version 1.12.6Docker version 1.12.6 docker-compose version 1.8.0