我有严重的困难,安装一个部分的pnpm单耗在一个码头康纳。问题是docker build在某些不应该安装的devDependencies上失败。
"devDependencies": {
"@types/node": "17.0.12",
"@types/ssh2-sftp-client": "7.0.0",
"dotenv": "14.3.2",
"eslint": "8.7.0",
"ts-node": "10.4.0",
"typescript": "4.5.5",
"@tts-tmc/eslint-config-typescript": "workspace:*",
"@tts-tmc/ts-config": "workspace:*"
}在我的Dockerfile中,我使用fetch获取所有依赖项
FROM node:14-alpine
ARG GITHUB_NPM_REGISTRY_TOKEN
RUN npm i -g pnpm
RUN mkdir -p /usr/app
# pnpm fetch does require only lockfile
COPY package.json bin/pnpm-lock.yaml /usr/app/
COPY bin/.npmrc /usr/app/.npmrc
WORKDIR /usr/app
RUN pnpm install -r --offline --prod但是,即使安装了大量的--prod依赖项,由于以下错误,停靠程序也无法正确构建
ERR_PNPM_NO_MATCHING_VERSION_INSIDE_WORKSPACE In : No matching version found for @tts-tmc/eslint-config-typescript@* inside the workspace
那么,有什么标准的方法来解决这个问题呢?或者我必须修改package.json,如果需要,您如何获得正确的版本?我以为是锁文件?应该足够安装所有依赖项。
马蒂亚斯
发布于 2022-03-07 23:10:57
尝试为您的项目生成一个专用的锁文件。安装@pnpm/make-专用-锁文件并在/usr/app中运行make-dedicated-lockfile。
https://stackoverflow.com/questions/71378111
复制相似问题