【问题标题】:'ENOENT: No such file or directory' Error in Docker buildDocker 构建中的“ENOENT:没有这样的文件或目录”错误
【发布时间】:2021-10-08 04:34:52
【问题描述】:

我试图在终端中运行以下代码:

docker build -t node-docker-project .

我的'Dockerfile'如下:

FROM node:16-slim
WORKDIR /app
COPY package.json ./app
RUN npm install
COPY . /app
CMD ["npm", "start"]

我试了好几次,但不断出现的错误如下图:

npm ERR! code ENOENT
npm ERR! syscall open
npm ERR! path /app/package.json
npm ERR! errno -2
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

我以为我没有安装依赖项,但我已经检查过了,它在我的本地应用程序目录中一切正常。有什么问题?

【问题讨论】:

    标签: node.js docker npm terminal


    【解决方案1】:

    解决方案

    上面代码的问题如错误信息所示。它表示在指定目录中找不到文件:

    ENOENT: no such file or directory, open '/app/package.json'
    

    查看'Dockerfile',你会看到你在下面使用了./app

    COPY package.json ./app
    

    而不是/app(删除 . ),因为它会尝试导航到无法搜索的文件夹和文件。运行它,现在它会给你一个成功的信息。

    【讨论】:

    • 我建议使用. 作为COPY 目标。这将复制到当前的WORKDIR,您不必重复其绝对路径。
    猜你喜欢
    • 2020-04-05
    • 1970-01-01
    • 2017-10-07
    • 2021-04-09
    • 1970-01-01
    • 2019-03-09
    • 2017-12-28
    • 2022-01-16
    • 2021-03-30
    相关资源
    最近更新 更多