【问题标题】:Error trying run react Docker image on k8s尝试在 k8s 上运行 react Docker 映像时出错
【发布时间】:2021-10-08 04:04:06
【问题描述】:

我正在构建一个微服务电子商务项目,我需要为我的项目中的每个服务器创建一个 docker 镜像并在 K8s 集群中运行它们。在为所有后端服务器成功创建映像后,我尝试为我的 React 前端应用程序创建一个 docker 映像,每次我尝试创建映像时都会发生此错误。

这是我的 docker 配置:

FROM node:alpine
WORKDIR /src
COPY package*.json ./
RUN npm install --silent
COPY . .
CMD ["npm ","start"];  

这是错误:

Error: Cannot find module '/src/npm '
    at Function.Module._resolveFilename (node:internal/modules/cjs/loader:933:15)
    at Function.Module._load (node:internal/modules/cjs/loader:778:27)
    at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:79:12)
    at node:internal/main/run_main_module:17:47 {
  code: 'MODULE_NOT_FOUND',
  requireStack: []
}

有时它会抛出这样的错误:

webpack output is served from content not from webpack is served from content not from webpack is served from /app/public docker

【问题讨论】:

  • "npm "的引号内多了一个空格。
  • 你好@ImranAbdalla。这里有多余的空间吗?
  • 多余的空间解决了一半的问题,但图像没有工作,下一个错误仍然存​​在。
  • 你好@ImranAbdalla。您能告诉我们您使用的是哪个版本的 react-scripts 吗?
  • 我做了一些研究,发现了两种可能的解决方案: 1. 将stdin_open: true 添加到您的 docker-compose 中。 2. 将您的react-scripts 降级到 v3.4.0。请按此顺序试一试,然后告诉我结果。

标签: node.js reactjs docker kubernetes skaffold


【解决方案1】:

这是为提高可见性而发布的社区 wiki 答案。随意扩展它。

要解决所描述的问题,需要执行以下步骤。

  1. 升级 Dockerfile:

    WORKDIR /src
    COPY package*.json ./
    RUN npm install --silent
    COPY . .
    CMD ["npm","start"];
    
  2. react-scripts 使用 3.4.0 版

  3. stdin_open: true 添加到 docker-compose 文件中

【讨论】:

    猜你喜欢
    • 2017-10-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-01-02
    • 2018-02-27
    • 1970-01-01
    • 2018-06-27
    • 1970-01-01
    相关资源
    最近更新 更多