承接上一篇MacBook M 系列芯片一键国内镜像安装 Homebrew 完整踩坑实录(清华源安装本体 + 阿里 bottles 源)-CSDN博客,本文记录配置完阿里 bottles 源后,执行brew install node@24完整过程,解释终端反复出现的Bottle missing, falling back to the default domain...警告成因,以及验证 Node 是否安装成功。

一、前置环境说明
- 设备:MacBook Pro Apple Silicon M 系列
- Homebrew 版本:6.0.2
- 仓库源:清华镜像(brew 本体仓库)
- Bottles 软件包源:阿里云镜像(HomebrewCN 脚本选择 5 阿里源)
- Shell:zsh,已执行
source ~/.zprofile重载环境变量
二、查找 Node 可用版本
执行搜索命令查看 brew 里所有 node 相关包:
bash
brew search node

输出内容简要解读
node:默认最新版 Node(当前映射 node@24)node@18:已禁用、不再维护node@20:标记 deprecated,废弃不推荐node@24:长期支持稳定版本,本次选择安装
Casks(图形客户端类)
bash
capslocknodelay (deprecated)
font-ubuntu-mono-derivative-powerline
nano-node (deprecated)
nodeclipse (disabled)
nodebox
提示说明:官方node包已从 homebrew/cask 迁移至 homebrew/core,直接执行brew install node即可。
三、重装 node@24 完整流程
1. 执行重装命令
bash
brew reinstall node@24
终端先列出 node@24 依赖清单,共计 17 个依赖: brotli c-ares hdrhistogram_c icu4c@78 libnghttp2 libnghttp3 ca-certificates openssl@3 libngtcp2 libuv simdjson readline sqlite uvwasi lz4 xz zstd
输入y确认开始下载安装。

2. 大量 Bottle missing 警告解析(重点)
全程每一个依赖包下载前都会打印警告:
bash
Warning: Bottle missing, falling back to the default domain...
Downloading https://ghcr.io/v2/homebrew/core/xxx/manifests/xxx

产生原因
- 阿里云镜像同步存在延迟,部分新版本 Bottle 预编译包尚未同步到阿里镜像站;
- Homebrew 逻辑:优先读取本地配置的国内镜像,找不到对应包时自动回退到官方
ghcr.io域名下载; - 该警告不影响安装,只是下载走了国外官方地址,速度会比国内镜像慢一点,不会安装失败。
优化方案(可选)
如果想彻底消除警告、全程走国内源:
- 更换为清华 bottles 源(安装脚本选 2),同步速度比阿里更快;
- 等待 1~2 天镜像站同步新版本;
- 提前执行
brew update刷新包清单再安装。
3. 下载 & 解压安装全过程
终端会循环执行以下步骤:
- 从 ghcr.io 拉取 manifest 清单文件(100% 完成)
- 拉取对应 arm64 预编译 bottle 压缩包,打印下载大小
- 校验完成后
Pouring xxx.tar.gz解压到/opt/homebrew/Cellar/目录 - 依次安装 17 个前置依赖
- 最后安装主程序
node@24(73.8MB 预编译包)

关键日志片段:
bash
Pouring node@24--24.17.0.arm64_tahoe.bottle.tar.gz
/opt/homebrew/Cellar/node@24/24.17.0: 2,051 files, 73.8MB
代表 Node24 本体解压安装完成。
4. 证书自动更新
安装ca-certificates依赖时会执行证书重建:
bash
Regenerating CA certificate bundle from keychain, this may take a while...

属于正常流程,用于 Node https 请求证书校验,耐心等待即可。
四、安装完成验证
1. 查看 Node 版本
bash
node --version

说明安装成功,环境变量 PATH 已生效。
2. 配套提示解读

bash
Disabl this behaviour by setting HOMEBREW_NO_INSTALL_CLEANUP=1.
Hide these hints with HOMEBREW_NO_ENV_HINTS=1 (see man brew).
- brew 安装完成后默认自动清理旧版本缓存包;
- 若想保留缓存包,在
~/.zprofile添加环境变量关闭自动清理。
五、常见问题避坑
- 警告 Bottle missing 会不会安装失败? 不会,brew 具备自动降级回源逻辑,只是下载走国外地址,网速差时会慢,不会中断。
- 安装完 node 命令找不到? 回到上篇教程,执行
source ~/.zprofile重载环境变量,或重启终端。 - 想切换 Node 其他版本怎么做?
bash
# 安装指定版本
brew install node@20
# 切换全局默认node
brew link node@20 --overwrite
国内源怎么切换? 重新运行 HomebrewCN 脚本:
bash
/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"
选择对应 bottles 源即可重新配置。
六、相关基础命令汇总
bash
# 搜索软件
brew search node
# 安装指定版本node
brew install node@24
# 重装软件
brew reinstall node@24
# 查看node版本
node --version
# 查看brew环境
brew config
# 刷新软件包清单
brew update
# 卸载node
brew uninstall node@24
七、完整流程总结
- 确认 Homebrew 国内镜像环境已配置并 source 生效
- brew search 查询可用 Node 版本
- brew reinstall node@24 执行安装,忽略 Bottle missing 警告
- 等待全部依赖 + 主程序解压完成
- node --version 验证安装结果
END
如果觉得这份基础知识点总结清晰,别忘了动动小手点个赞👍,再关注一下呀~ 后续还会分享更多有关开发问题的干货技巧,同时一起解锁更多好用的功能,少踩坑多提效!🥰 你的支持就是我更新的最大动力,咱们下次分享再见呀~🌟