我使用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
帮助将不胜感激。