1

我使用docker-compose(version 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

我尝试了在 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

帮助将不胜感激。

4

0 回答 0