🧩 离线安装 pnpm:给内网 Windows 电脑装上"万能工具箱"
没有互联网,也能优雅地用上 pnpm
------ 一篇写给小白的保姆级离线安装教程
你是否有过这样的经历:公司的开发机在纯内网 ,不能连外网,但你想跑一个现代前端项目(比如 Next.js、Vite,或者酷炫的 OpenClaw),而项目文档里写着大大的几个字:pnpm install 。
没有 pnpm,寸步难行。
别慌,这篇文章就是为你准备的。我会用最通俗的语言 + 最准确的步骤,告诉你如何在外网把 pnpm 打包成"离线工具箱",然后搬到内网 Windows 电脑上顺利安装。
一、先搞明白:pnpm 是什么?为什么要离线装?
pnpm 是一个比 npm 更快、更省磁盘空间的包管理器。很多现代项目(比如 OpenClaw)都选择它来管理依赖。
离线安装 pnpm 听起来像是个死循环:
- 要装 pnpm,通常需要联网执行
npm install -g pnpm - 但内网没有网,怎么装?
解决思路很简单:在外网把 pnpm 下载成一个离线包(.tgz 文件),然后搬到内网,像搬运一箱工具一样,再拆包安装。
二、准备工作:Node.js 是地基
在安装 pnpm 之前,内网 Windows 电脑必须先有 Node.js。因为 pnpm 本质上是一个 Node.js 写的工具,需要 Node.js 环境来运行。
如何离线安装 Node.js?
-
在外网下载安装包:
- 打开 Node.js 官网,选择 Windows 64-bit 的 LTS 版本 (比如
node-v22.14.0-x64.msi)。 - LTS = Long Term Support,稳定可靠,适合大多数项目。
- 打开 Node.js 官网,选择 Windows 64-bit 的 LTS 版本 (比如
-
搬到内网 :用 U 盘或共享文件夹,把
.msi文件复制到内网 Windows 电脑。 -
安装 :双击
.msi,一路 Next。关键一步 :确保勾选 "Add to PATH " ------ 这样你才能在命令行里直接用node和npm命令。 -
验证:打开命令提示符(cmd),输入:
cmdnode -v npm -v如果看到版本号,说明 Node.js 安装成功。
💡 小贴士:如果你需要管理多个 Node 版本,可以在外网顺便下载 nvm-windows 的安装包,搬运进来安装。但对于大多数项目,一个 LTS 版本就足够了。
三、核心步骤:在外网打包 pnpm
现在,你需要在可以联网的电脑(Windows / Mac / Linux 都行)上,把 pnpm 打包成一个离线包。
1. 确认 npm 可用
外网电脑必须已经安装了 Node.js(通常都有)。打开终端,输入 npm -v 确认。
2. 执行打包命令
bash
npm pack pnpm
这个命令会从 npm 官方仓库下载 pnpm 的最新版本,并打包成一个 .tgz 文件,例如 pnpm-9.0.0.tgz。
npm pack就像把 pnpm 这个"工具箱"压缩成一个行李箱。- 生成的
.tgz文件就是一个完整的离线安装包,不依赖网络就可以安装。
3. 找到这个文件
命令执行完后,在当前目录下就会生成 pnpm-9.0.0.tgz(版本号可能不同)。把它复制到 U 盘里。
四、内网安装:拆箱 + 使用
带着你的 U 盘,回到内网 Windows 电脑。
1. 把 .tgz 文件放到一个方便的位置
例如 D:\offline-packages\pnpm-9.0.0.tgz。
2. 打开命令提示符(cmd)
按 Win + R,输入 cmd,回车。
3. 执行全局安装命令
cmd
npm install -g D:\offline-packages\pnpm-9.0.0.tgz
-g表示全局安装,这样你可以在任何目录下使用pnpm命令。- 路径请替换成你电脑上
.tgz文件的实际路径。
4. 等待安装完成
npm 会解压这个 .tgz 文件,并把 pnpm 的可执行文件放到 Node.js 的安装目录下。整个过程很快,而且完全不依赖网络。
5. 验证安装
输入:
cmd
pnpm -v
如果看到版本号(比如 9.0.0),恭喜你!pnpm 已经成功在内网电脑上安家落户了。
五、常见问题 & 避坑指南
| 问题现象 | 可能原因 | 解决方法 |
|---|---|---|
'pnpm' 不是内部或外部命令 |
环境变量未刷新 | 关闭 cmd 重新打开,或者重启电脑 |
npm install -g 报错 ENOENT |
.tgz 文件路径错误 |
使用绝对路径,或者先 cd 到 .tgz 所在目录,然后执行 npm install -g ./pnpm-xxx.tgz |
安装后 pnpm -v 显示旧版本 |
之前安装过其他版本的 pnpm | 先卸载旧版本:npm uninstall -g pnpm,再重新安装 |
| 想指定特定版本而不是最新版 | 外网打包时指定版本 | npm pack pnpm@8.15.0 即可打包指定版本 |
六、扩展:不只是 pnpm,任何 npm 包都可以这样离线安装
这个方法不仅适用于 pnpm,也适用于任何你想离线安装的 npm 全局工具,比如 http-server、nodemon、vercel 等等。
万能公式:
- 在外网:
npm pack <包名>得到.tgz - 搬到内网:
npm install -g <路径/包名.tgz>
你可以为团队准备一个"离线工具包",里面放着所有常用的 .tgz 文件,新同事入职时一键安装,省去联网配置的烦恼。
七、接下来:安装项目依赖
现在 pnpm 已经装好了,你可以继续按照项目的文档执行 pnpm install。
但注意:如果整个项目依赖也需要离线安装(因为内网没有 npm 仓库),你需要使用 pnpm-airgap 或私有仓库方案。那是另一篇教程的内容,但至少现在,pnpm 这个核心工具已经在手了。
写在最后
离线环境并不可怕,它只是把"即时下载"变成了"提前准备"。
npm pack 就像一个神奇的行李箱,让你能把任何 npm 工具装进去,带到没有网络的角落。
希望这篇教程能帮你顺利跨过离线安装 pnpm 这道坎。
如果你在操作中遇到任何问题,欢迎在评论区留言,我会尽力帮你解决。
Happy offline coding!
------ 你的离线开发好伙伴