centos 7 已安装node和npm ,版本信息如下: (current: {"node":"14.19.0","npm":"6.14.16"}), 离线安装兼容node和npm版本的pm2 和 yarn。
下面是解决该问题的办法:
完整离线包下载方案
要确保把所有的依赖项(包括可选依赖项)都下载下来,需要执行以下操作:
bash
# 创建并进入pm2离线包目录
mkdir pm2-offline && cd pm2-offline
# 下载pm2及其所有依赖项(包含可选依赖)
npm install [email protected] --no-save --production --optional --cache .npm-cache
# 创建离线包
tar -czvf pm2-offline-packages.tar.gz .npm-cache
# 对yarn执行相同操作
cd ..
mkdir yarn-offline && cd yarn-offline
npm install yarn@latest --no-package-lock --no-save --production --optional --cache .npm-cache
tar -czvf yarn-offline-packages.tar.gz .npm-cache
离线安装流程
把离线包复制到目标机器之后,按照下面的步骤安装:
bash
# 解压pm2离线包
mkdir -p /tmp/pm2-offline && cd /tmp/pm2-offline
tar -xzvf pm2-offline-packages.tar.gz
# 使用缓存进行安装
npm install [email protected] -g --no-package-lock --no-save --production --optional \
--cache /tmp/pm2-offline/.npm-cache --prefer-offline
# 对yarn执行相同操作
mkdir -p /tmp/yarn-offline && cd /tmp/yarn-offline
tar -xzvf yarn-offline-packages.tar.gz
npm install yarn@latest -g --no-package-lock --no-save --production --optional \
--cache /tmp/yarn-offline/.npm-cache --prefer-offline
参数说明
--optional
:该参数的作用是包含可选依赖项,防止出现SKIPPING OPTIONAL DEPENDENCY警告。--cache /path
:指定npm缓存的位置。--prefer-offline
:优先使用缓存,只有在缓存中没有相应内容时才会尝试网络请求。
验证
- pm2 -v
- yarn -v