我在Dockerfile
中使用pnpm
,我有一个依赖项,它是从GitHub安装的。
默认情况下,PNPM使用yarn
从Git安装依赖项。
PNPM的问题是它不能访问Yarn,我认为是某种权限问题。
错误:
ERR_PNPM_PREPARE_PKG_FAILURE命令失败,退出代码为1:/usr/本地/bin/纱安装
命令“/bin/sh -c pnpm install”返回了一个非零代码:1
这是我的Dockerfile
FROM node:alpine
RUN npm install -g pnpm
WORKDIR /app
COPY ["package.json", "pnpm-lock.yaml", "./"]
RUN pnpm install
COPY . .
RUN pnpm build
ENV PORT=8080
EXPOSE 80
CMD [ "node", "./build/index.js" ]
更新
这是从GitHub使用的存储库。Baileys
当我尝试安装没有Dockerfile的软件包时,一切都运行得很好。如果我运行pnpm install
,一切都运行得很好。但是当我运行Dockerfile的build命令时,它会产生问题。docker build -t name .
1条答案
按热度按时间yks3o0rb1#
正如你所说的,
pnpm
使用yarn
从Git安装依赖项。从输出中,你可以看到yarn
失败了。如果你在Docker容器yarn add https://github.com/adiwajshing/Baileys.git
中运行,它会输出:node:alpine
映像缺少git
要解决您的问题,只需在
Dockerfile
中的pnpm install
之前安装git
: