跳过在docker容器内挂载node_modules文件夹
我有一个在Docker中运行的节点js应用程序。
在Dockerfile中,我创build了应用程序并将我的本地代码移入其中。
# Dockerfile FROM node:8.6.0 WORKDIR /app # Copying app COPY . /app # Executing test script RUN scripts/pre-build.sh
我的目录结构是。
- 脚本
- node_modules
- SRC
- 执行
- independent_module
- shared_module_for_some_task
我有一个独立的模块文件夹内的src通过npm link
链接到node_modules
文件夹。 当我为一个包运行npm link
,为包创build一个本地node_modules
(shared_module_for_some_task)。
在运行映像时,我将src中的本地更改安装到容器中的src中。 这会覆盖在本地为包创build的node_modules
文件夹,因为本地没有node_modules(在执行npm link
时在docker build上创build)。
我已经尝试在这个shared_module_for_some_task
下创build一个空的node_modules文件夹,但它没有工作。
该文件夹被覆盖或更改为空白,因为它在本地。 当我在没有安装目录的情况下运行镜像时,这个效果很好。
有没有办法做到这一点。 请build议。
将其添加到.dockerignore中也不起作用
我不想在卷上使用docker-compose.yml文件来隐藏node_modules的装载。