在使用弹出的React应用程序的Docker容器中获取多个node_modules?

时间:2018-12-02 18:26:50

标签: reactjs docker docker-compose

我必须使用弹出的React CRA,并且由于我正在处理的这个应用程序中有多个react ui项目,因此我试图为构建脚本/依赖关系构建一个基础容器,然后将该基础容器用于所有前端实例,因此维护这些响应Webpack脚本变得更加容易。

Github存储库:https://github.com/StupidIncarnate/test-containers

当我为实际的ui项目安装package.json时,似乎react脚本被多个node_modules混淆了,并且无法访问webpack / babel所在的node_modules。

Docker分层容器结构(Linux容器)

usr
   src
      package.json
      node_modules
      scripts
      config
      app
         node_modules
         src
         public
         package.json

containers / app-local / ui / Dockerfile

FROM container-ui

# set working directory
WORKDIR /usr/src/app

# add `/usr/src/app/node_modules/.bin` to $PATH
ENV PATH /usr/src/app/node_modules/.bin:$PATH

# install and cache app dependencies
#COPY ./app-local/ui/package.json /usr/src/app/package.json
#COPY ./app-local/ui/package-lock.json /usr/src/app/package-lock.json
#RUN npm install

COPY ./app-local/ui/src /usr/src/app/src
COPY ./app-local/ui/public /usr/src/app/public


# set working directory
WORKDIR /usr/src

如果我取消注释复制软件包和npm安装行,则在运行react应用程序时,会出现以下编译器错误:

CompilerError

但是,如果我不予评论,则无法安装仅用于该ui实例的软件包。

0 个答案:

没有答案