gpt4 book ai didi

javascript - 如何修复运行 'cannot find module'错误的Docker容器?

转载 作者:行者123 更新时间:2023-12-02 19:44:17 27 4
gpt4 key购买 nike

我是Docker的新手,正在尝试将MERRN堆栈应用程序移至AWS。我想在移动它之前先对其进行docker化。但是,当我在Medium - Docker with MERN stack上遵循此在线教程时,我开始使用docker run -p 5000:5000 -d backend启动我的docker镜像,并且在VS代码中遇到错误。我不确定这个错误意味着什么,但是我认为它与我的文件夹管理有关。
我将附上我的文件夹结构的片段以及我使用的docker文件。所以我的主要问题是我试图进行所有设置,但是此问题阻碍了我的进步。因此,任何帮助将不胜感激。谢谢
enter image description here
DockerFile:

FROM node:10.19.0
# Create app directory
WORKDIR /usr/src/app
# A wildcard is used to ensure both package.json AND package-lock.json are copied
COPY package*.json ./
# Bundle app source
COPY . .
# Install app dependencies
RUN npm install
EXPOSE 5000
CMD [ "npm", "start" ]
错误:
> exodus@1.0.0 start /usr/src/app

> node server


internal/modules/cjs/loader.js:638

throw err;

^


Error: Cannot find module './routes/api/Email'

at Function.Module._resolveFilename (internal/modules/cjs/loader.js:636:15)

at Function.Module._load (internal/modules/cjs/loader.js:562:25)

at Module.require (internal/modules/cjs/loader.js:692:17)

at require (internal/modules/cjs/helpers.js:25:18)

at Object.<anonymous> (/usr/src/app/server.js:24:19)

at Module._compile (internal/modules/cjs/loader.js:778:30)

at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10)

at Module.load (internal/modules/cjs/loader.js:653:32)

at tryModuleLoad (internal/modules/cjs/loader.js:593:12)

at Function.Module._load (internal/modules/cjs/loader.js:585:3)

at Function.Module.runMain (internal/modules/cjs/loader.js:831:12)

at startup (internal/bootstrap/node.js:283:19)

at bootstrapNodeJSCore (internal/bootstrap/node.js:623:3)

npm ERR! code ELIFECYCLE

npm ERR! errno 1

npm ERR! exodus@1.0.0 start: `node server`

npm ERR! Exit status 1



npm ERR!

npm ERR! Failed at the exodus@1.0.0 start script.

npm ERR! This is probably not a problem with npm. There is likely additional logging output above.


npm ERR! A complete log of this run can be found in:

npm ERR! /root/.npm/_logs/2020-10-28T20_13_53_160Z-debug.log

Search...
Stick to bottom

最佳答案

您的Dockerfile看起来还不错,您的项目结构也是如此。
我假设Docker镜像由于某种原因出现故障并丢失了文件。
您可以尝试再次构建图像​​吗?复印步骤是否正确执行?

// Make sure to execute this in the project root.
docker build -t backend .
如果错误仍然存​​在,请使用bash或sh登录docker容器,并尝试使用 npm start手动启动节点服务器:
docker run -p 5000:5000 -d backend /bin/bash
or
docker run -p 5000:5000 -d backend /bin/sh
登录docker容器也将有助于调查例如某些文件未传输。

关于javascript - 如何修复运行 'cannot find module'错误的Docker容器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64580861/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com