我在Dockerfile
中使用Dockerfile
,我有一个依赖项,它是从GitHub安装的。
PNPM默认使用yarn
从Git安装依赖项。
PNPM的问题是它无法访问纱线,我认为是某种许可问题。
错误: 出口代码1: /usr/ ERR_PNPM_PREPARE_PKG_FAILURE /bin/纱线安装失败 命令'/bin/sh pnpm -c‘返回一个非零代码:1
这是我的文档
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中使用的repo。贝利
当我尝试安装没有、Dockerfile、的软件包时,一切都很完美,如果我运行pnpm install
,一切都可以正常工作。但是,当我为Dockerfile运行build命令时,它会产生问题。
docker build -t name .
发布于 2022-11-26 22:15:45
正如您所说的,pnpm
使用yarn
安装来自Git的依赖项。从输出中可以看到,yarn
失败了。如果您在Docker容器yarn add https://github.com/adiwajshing/Baileys.git
中运行,它将输出:
info No lockfile found.
[1/4] Resolving packages...
error Couldn't find the binary git
node:alpine
图像缺少git
。
要解决您的问题,只需在git
中的pnpm install
之前安装Dockerfile
FROM node:alpine
RUN apk add --no-cache git
RUN npm install -g pnpm
...
https://stackoverflow.com/questions/72845872
复制相似问题