如何在安装卷时排除某些路径?

时间:2015-11-10 06:35:16

标签: docker docker-compose

我想在当前目录中挂载所有内容,/node_modules/client/bower_components除外。我目前必须手动挂载所有路径,如下所示:

app:
  build: .
  ports:
    - "3000:3000"
    - "35729:35729"
  links:
    - mongo
  volumes:
    - client/app:/www/app/client/app
    - client/assets:/www/app/client/assets
    - client/components:/www/app/client/components
    - server:/www/app/server
    ...
mongo:
  image: mongo
  ports:
    - "27017:27017"

我是否可以以某种方式排除某些路径,例如!client/bower_components!node_modules

2 个答案:

答案 0 :(得分:2)

不,这是不可能的。

我认为您唯一的选择是重新构建您的应用程序目录结构,或者执行您现在正在执行的操作并包含所有路径。

答案 1 :(得分:-1)

是的,你可以。

这个问题有herehere的答案。

为了快速参考,解决方案如下。

volumes:
  - ./parent:/usr/share/elasticsearch/parent
  - /usr/share/elasticsearch/parent/node_modules/

这里是docker volume docs