首页 > 解决方案 > 当我构建 docker 映像时,我想阻止在本地目录中安装 node_modules

问题描述

我正在学习在 create-react-app 中使用 docker。我不希望 node_modules 安装在我的本地目录中,因为我在 dockernpm install容器中运行,所以我只需要package.json在我的目录中,对吗?

但是我每次构建镜像时,node_modules都会自动安装在本地目录中。我认为构建这个文件夹需要很长时间COPY

我怎样才能防止这种情况?我用 CRA 创建了 React 应用程序,我没有接触任何代码,我node_modules自己删除了文件夹。而且我只创建了“Dockerfile.dev”和“docker-compose.yml”。

FROM node:alpine

WORKDIR /usr/src/app

COPY package.json ./

RUN npm install

COPY ./ ./

ENV CHOKIDAR_USEPOLLING=true

CMD ["npm","run","start"]
version: "3"
services:
    react:
        build:
            context: .
            dockerfile: Dockerfile.dev
        ports:
            - "3333:3000"
        volumes:
            - /usr/src/app/node_modules
            - ./:/usr/src/app
        stdin_open: true


如果我这样做'docker-compose up',它会自动在本地目录中创建'node_modules'。我怎样才能防止这种情况?

标签: reactjsimagedockerbuildlocal-node-modules

解决方案


推荐阅读