Ghost博客Node版本更新问题:Ubuntu 22.04下无法降级至v18
解决Ghost更新时Node版本不匹配问题(Ubuntu 22.04 LTS)
问题核心
按指引升级Node到Ghost支持的v18 LTS版本,实际安装了v20.9.0且无法降级;node -v显示v18,但执行ghost update仍报错版本不兼容,运行环境为Ubuntu 22.04 LTS + Ghost。
分步解决方案
1. 彻底清理冲突的Node版本
先卸载所有现有Node相关包,消除版本残留:
sudo apt remove --purge nodejs npm sudo apt autoremove sudo rm -rf /usr/local/bin/node /usr/local/bin/npm sudo rm -rf /usr/local/lib/node_modules
2. 安装指定的Node v18 LTS版本
使用NodeSource官方源安装稳定的v18版本:
# 添加NodeSource v18专属源 curl -fsSL https://deb.nodesource.com/setup_18.x | sudo -E bash - # 安装Node.js(包含npm) sudo apt-get install -y nodejs
验证安装结果:
node -v # 应输出v18.x.x格式的版本号 npm -v
3. 修复Ghost的版本检测偏差
若node -v显示正确但Ghost仍报错,是因为Ghost读取了系统其他路径的Node版本:
- 检查全局Node的实际路径:
which node
确保输出为/usr/bin/node(NodeSource安装的默认路径)
- 强制Ghost使用正确的Node路径:
编辑Ghost安装目录下的.env文件,添加环境变量配置:
PATH="/usr/bin:$PATH"
重启Ghost生效:
ghost restart
4. 重新执行Ghost更新
ghost update
Ghost官方Node版本要求翻译
Ghost仅支持**长期支持版(LTS)**的Node.js,不支持开发版或最新稳定版;
撰写时当前支持的Node版本为v18 LTS,v16 LTS已停止支持;
安装/更新Ghost前必须确认Node版本符合要求,否则会导致操作失败;
不建议通过Ubuntu默认apt源安装Node,默认源版本通常不符合要求,推荐使用NodeSource或nvm进行版本管理。
内容的提问来源于stack exchange,提问作者Ryan
相关产品推荐
相关产品推荐

