【问题标题】:How to dockerize with NX (react and node app)?如何使用 NX(反应和节点应用程序)进行 dockerize?
【发布时间】:2021-06-10 20:43:33
【问题描述】:

我创建了一个 nx 工作区,其中包含 2 个反应应用程序(客户端/管理员)和 1 个带节点的服务器。

对于每一个,我都创建了一个 DockerFile,并且在项目的根目录下我有我的 docker-compose.yml。

我的问题:当我使用命令 docker-compose up --build 时,3 个应用程序运行,但对于 react-app,我有一个空白页面,而使用命令 nx serve ,我们可以看到应用程序.这是我的代码:

Dockerfile

FROM node:14-alpine

WORKDIR /home/node/app

COPY ./apps/front-client/src .

COPY ./package.json package.json

RUN npm install --production

EXPOSE 3000

USER node

CMD ["npx", "serve", "-s", ".", "-l", "3000"]

docker-compose.yml

services:
  client:
    build: 
      context: .
      dockerfile: ./apps/front-client/Dockerfile
    ports:
      - 3000:3000
    volumes:
      - ./apps/front-client/src:/app/src
...

根 div 里面没有任何东西。你知道为什么吗?

【问题讨论】:

    标签: node.js reactjs docker docker-compose dockerfile


    【解决方案1】:

    你的WORKDIR设置为/home/node/app,也就是说源放在/home/nome/app/src中。

    npx server -s . -l 3000/home/nome/app/src 中执行。

    当您在 docker-compose 中挂载卷时,您正在将应用程序挂载到 /app/src,但该文件夹中没有 npx 提供服务。

    对齐两个文件夹。根据不成文的约定,正确的位置是/app/src,因此将构建文件更改为WORKDIR /app

    【讨论】:

    • 感谢您的回复。但是,什么都改变不了。结果是一样的
    猜你喜欢
    • 2022-06-28
    • 2019-02-16
    • 2018-01-13
    • 2022-07-08
    • 2019-11-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-05-23
    相关资源
    最近更新 更多