【2025-05-22】centos 离线安装兼容node和npm版本的pm2 和 yarn

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 pm2@5.4.0--no-package-lock --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 pm2@5.4.0 -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
相关推荐
MilesShi2 分钟前
从 scheduler_tick 到上下文切换:深入解析 Linux 内核的 TIF_NEED_RESCHED 标志设置流程
linux·运维·单片机
yenggd2 小时前
centos系统apache支持php配置
centos·php·apache
我爱云计算3 小时前
K8S详解(5万字详细教程)
linux·运维·云原生·容器·kubernetes
2301_794333915 小时前
实验室服务器配置|通过Docker实现Linux系统多用户隔离与安全防控
linux·服务器·docker·实验室
荣光波比6 小时前
Nginx 实战系列(一)—— Web 核心概念、HTTP/HTTPS协议 与 Nginx 安装
linux·运维·服务器·nginx·云计算
绿箭柠檬茶9 小时前
Ubuntu 使用 Samba 共享文件夹
linux·运维·ubuntu
工藤新一¹10 小时前
Linux —— 虚拟进程地址空间
linux·运维·服务器·c/c++·虚拟进程地址空间
Aspiresky10 小时前
浅析Linux内核scatter-gather list实现
linux·dma·scatter/gather
奔跑吧 android11 小时前
【linux kernel 常用数据结构和设计模式】【数据结构 3】【模拟input子系统input_dev和input_handler之间的多对多关系】
linux·数据结构·input·kernel·input_dev·input_handler·input_handle
再难也得平11 小时前
Linux初级篇
linux·运维·服务器