Docker:找不到React项目的文件



我正在docker中建立一个React项目。该项目在我的本地环境中运行得很好,但当我尝试使用Docker构建它时,我遇到了一些构建问题

Step 7/7 : RUN npm run build
---> Running in 31be0cd260c7
> educollect@0.1.0 build /app
> react-scripts build
Creating an optimized production build...
Failed to compile.
./src/Pages/Steps.js
Cannot find file '../Components/Steppers' in './src/Pages'.

npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! educollect@0.1.0 build: `react-scripts build`
npm ERR! Exit status 1

这是我的文件:

Dockerfile

FROM node:alpine
WORKDIR /app
ENV PATH /app/node_modules/.bin:$PATH
COPY package.json /app/package.json
RUN npm install
COPY . /app
RUN npm run build

Package.json

{
"name": "myproject",
"version": "0.1.0",
"private": true,
"dependencies": {
"@material-ui/core": "^4.9.5",
"@material-ui/icons": "^4.9.1",
"@material-ui/lab": "^4.0.0-alpha.45",
"@testing-library/jest-dom": "^4.2.4",
"@testing-library/react": "^9.4.1",
"@testing-library/user-event": "^7.2.1",
"axios": "^0.19.2",
"node-sass": "^4.13.1",
"prop-types": "^15.7.2",
"query-string": "^6.11.1",
"react": "^16.13.0",
"react-dom": "^16.13.0",
"react-router-dom": "^5.1.2",
"react-scripts": "3.4.0"
},
"scripts": {
"start": "react-scripts start",
"build": "react-scripts build",
"test": "react-scripts test",
"eject": "react-scripts eject"
},
"eslintConfig": {
"extends": "react-app"
},
"browserslist": {
"production": [
">0.2%",
"not dead",
"not op_mini all"
],
"development": [
"last 1 chrome version",
"last 1 firefox version",
"last 1 safari version"
]
}
}

当我尝试使用以下命令构建它时:

docker build -t myproject:latest .

我跑进了大楼。任何形式的帮助都将不胜感激。

容器缺少一个组件:

/src/Pages/Steps.js找不到文件".."/组件/步进器"in"/src/Pages。

登录容器,仔细检查Steps.js文件是否在容器中。

以下是我修复的方法

这是一个案件敏感性问题。文件名的大小写不一致。我把大写字母用错了。

我将index.js引用为Index.js,并且在大写案例中也错误地引用了其他一些文件,而不是使用它们的实际案例。

我修复了它们,并正确地引用了它们,构建成功运行。

非常感谢Johnson Bayo Adekunle的协助。

仅此而已。

我希望这对有帮助

最新更新