node.js - npm 错误! enoent ENOENT : no such file or directory, 打开 '/app/package.json'

标签 node.js docker npm

在这个问题上有点卡住了。通过 Udemy.com 参加有关 Docker 的 Grider 类(class)。

当我这样做时,我总是收到以下错误:

docker run -p 3000:3000 -v /app/node_modules -v $(pwd):/app 5932996c40dc

npm ERR! path /app/package.json
npm ERR! code ENOENT
npm ERR! errno -2
npm ERR! syscall open
npm ERR! enoent ENOENT: no such file or directory, open '/app/package.json'
npm ERR! enoent This is related to npm not being able to find a file.
npm ERR! enoent

npm ERR! A complete log of this run can be found in:
npm ERR!     /root/.npm/_logs/2019-01-30T23_04_17_890Z-debug.log

我回显该命令是因为我想确切地了解它正在尝试执行的内容并返回为:

docker run -p 3000:3000 -v /app/node_modules -v /mnt/c/projects/courses/docker_kubernetes/frontend:/app 5932996c40dc

我在不使用 -v 的情况下运行镜像,以便可以启动容器并exec -it 进入其中以查看容器上的内容。它确实显示了容器内应有的所有内容。它将所有内容复制到容器中的 /app 中。

enter image description here

我用来构建镜像的命令是docker build -f Dockerfile.dev。并从本地版本中删除node_modules

这是我的存储库的副本,其中包含 Dockerfile 等:https://github.com/ishraqiyun77/docker_kubernetes .

在 Windows 10 Pro 上的 Windows Subsystem for Linux (WSL) 中运行,docker-client 在 WSL 中运行,docker-daemon 在 VMWare Workstation Player 15 中运行。我确实使用 CHOKIDAR_USEPOLLING=true 制作了 .env 以达到良好的效果。 。尚不确信此配置是问题所在,但谁知道,它可能是问题。

此外,容器或本地文件系统中都没有 /root/.npm/_logs/2019-01-30T23_04_17_890Z-debug.log

我还将 WSL 更改为 /mnt/c/projects...,而不是路径 /c/projects

最佳答案

我还通过 Udemy.com 参加有关 Docker 的 Grider 类(class)。我遇到了和你完全相同的问题。由于我使用的是Windows 10家庭版,所以无法使用Docker Desktop (Windows),只能使用Docker Toolbox。

就我而言,我正在尝试运行:

xwy52@JFC-DELL MINGW64/d/Git/LearnDevOps/docker/images/frontend(主)
$ docker run -p 3000:3000 -v/app/node_modules -v $(pwd):/app 5d83ae77af14

我遇到了你的问题,我的解决方案是为 VirtualBox 中的默认虚拟机配置另一个共享文件夹,如下图所示: Configure Shared Folder for Default VM

关于node.js - npm 错误! enoent ENOENT : no such file or directory, 打开 '/app/package.json',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54451141/

相关文章:

docker - 使用容器docker作为CF应用程序的代理来获取公共(public)IP

javascript - 我收到错误$(…).modal不是函数,即使在jQuery之后导入了 Bootstrap ,我也该如何解决(使用npm版本)?

node.js - SailsJS 安装 MongoDB 时出错(windows 8 x64)

node.js - Next.JS - `.htaccess` 文件?

javascript - 如何允许 Node pg 模块与我的 Windows postgresql 服务器通信?

node.js - docker-compose : nodejs container not communicating with postgres container

laravel - 无法找到用户 sail : no matching entries in passwd file

node.js - 从 Angular 11 升级到 12 导致对等依赖冲突

javascript - webpack-cli@3.0.8 需要 webpack@^4.x.x 的对等体,但没有安装

javascript - Node.js:TypeError:对象 socket.io 没有方法 'listen'