纱线版本:0.21.2
Nodejs版本:6.9和4.7
在本地运行纱线时,它可以正常工作
运行npm install时,它可以正常工作
当运行yarn install Dockerfile(sudo ldconfig
)时,它失败并显示:docker build .
我完全不知道为什么。
error Couldn't find a package.json file in "/root/.cache/yarn/npm-readable-stream-2.2.2-a9e6fec3c7dda85f8bb1b3ba7028604556fc825e"
Yarn以这种方式安装在Dockerfile中
Step 16 : RUN yarn install
---> Running in 917c2b1b57fb
yarn install v0.21.2
[1/4] Resolving packages...
[2/4] Fetching packages...
error Couldn't find a package.json file in "/root/.cache/yarn/npm-readable-stream-2.2.2-a9e6fec3c7dda85f8bb1b3ba7028604556fc825e"
info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.
The command '/bin/sh -c yarn install' returned a non-zero code: 1
答案 0 :(得分:0)
构建docker映像时,不会将文件自动复制到docker映像中,尽管这些文件是docker build上下文的一部分。 (如果有的话,还取决于.dockerignore文件的配置)。要将文件从Docker上下文添加到Docker映像,您可以使用运行命令ADD或COPY明确地将其添加。
以下dockerfile示例:
WORKDIR /app
COPY ["yarn.lock", "package.json", "./"]
# Install app dependencies
RUN yarn install --check-files --non-interactive --ignore-optional --frozen-lockfile