在docker-compose中安装src-dir时,如何从主机“隐藏” node_modules-dir?

时间:2019-04-02 11:03:39

标签: node.js docker docker-compose node-modules mounted-volumes

我使用docker-compose(版本1.24.0)在容器中运行Node.js应用程序。在开发模式下,我挂载了src卷,但是我希望容器使用不在主机上创建的node_modules目录,而只是在容器内部。

我的docker-compose摘录

volumes:
  - .:/usr/src/app
command:
 - /bin/sh
 - -c
 - |
   npm install
   npm run dev

是否有一种方法可以使子目录/usr/src/app/node_modules在容器本地,并且没有npm install在主机上创建和填充目录./node_modules

我尝试过this solution发布在Stackoverflow上,以某种方式在容器中运行node_modules后仍会在主机上创建并填充目录npm install .。我使用了以下修改的docker-compose.yml

volumes:
  - .:/usr/src/app
  - /usr/src/app/node_modules
command:
 - /bin/sh
 - -c
 - |
   npm install
   npm run dev

我什至尝试使用这样的命名卷:

  volumes:
    - .:/usr/src/app
    - node_modules:/usr/src/app/node_modules

volumes:
- node_modules

我们将不胜感激。

0 个答案:

没有答案