Ubuntu安裝Node.js指定版本指南分享
在沒(méi)有安裝 NVM 的服務(wù)器環(huán)境中(如 Docker、CI/CD、虛擬機(jī)等),建議使用 Node.js 官方的二進(jìn)制包源(PPA)來(lái)快速安裝特定版本的 Node.js。
本指南將展示如何在 Ubuntu/Debian 系統(tǒng)中通過(guò) NodeSource 官方 PPA 安裝 Node.js 的 LTS 與最新版本。
一、安裝 Node.js 20(當(dāng)前活躍 LTS)
適合最新項(xiàng)目開(kāi)發(fā)和維護(hù):
# 1. 添加 NodeSource 源 curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash - # 2. 安裝 Node.js 20 sudo apt-get install -y nodejs # 3. 驗(yàn)證安裝 node -v npm -v
二、安裝 Node.js 18(長(zhǎng)期支持版本 LTS)
適合已有系統(tǒng)兼容性較好的 LTS 項(xiàng)目:
# 1. 添加 NodeSource 源 curl -fsSL https://deb.nodesource.com/setup_18.x | sudo -E bash - # 2. 安裝 Node.js 18 sudo apt-get install -y nodejs # 3. 驗(yàn)證安裝 node -v npm -v
三、安裝 Node.js 16(維護(hù)階段的舊 LTS)
適合舊系統(tǒng)或歷史項(xiàng)目兼容需求:
# 1. 添加 NodeSource 源 curl -fsSL https://deb.nodesource.com/setup_16.x | sudo -E bash - # 2. 安裝 Node.js 16 sudo apt-get install -y nodejs # 3. 驗(yàn)證安裝 node -v npm -v
四、安裝 Node.js 22(當(dāng)前最新版,非 LTS)
適合測(cè)試新特性、前沿技術(shù)棧:
# 1. 添加 NodeSource 源 curl -fsSL https://deb.nodesource.com/setup_22.x | sudo -E bash - # 2. 安裝 Node.js 22 sudo apt-get install -y nodejs # 3. 驗(yàn)證安裝 node -v npm -v
五、安裝前準(zhǔn)備(可選但推薦)
安裝 curl 工具(如未安裝):
sudo apt-get update sudo apt-get install -y curl
六、常見(jiàn)問(wèn)題及解決方法
問(wèn)題 1:Node.js 安裝沖突
安裝新版本時(shí),若系統(tǒng)中存在舊的 nodejs 或 libnode 依賴(lài),可能出現(xiàn)如下錯(cuò)誤:
dpkg: error processing archive nodejs_xxx.deb (--unpack): trying to overwrite '/usr/share/systemtap/tapset/node.stp', which is also in package libnode72:amd64 ...
解決方案:先卸載舊版本的相關(guān)依賴(lài)
sudo apt-get remove --purge nodejs libnode72 sudo apt-get autoremove
然后重新安裝:
sudo apt-get install -y nodejs
七、其它建議
- 如果你希望在多個(gè)項(xiàng)目中靈活切換 Node.js 版本,建議使用 nvm。
- 若用于 Docker 構(gòu)建,可直接在
Dockerfile中使用官方 Node 鏡像(如node:20、node:18等)。 - 確保安裝完后配套的
npm版本也是最新,可使用npm install -g npm升級(jí)。
參考資料:
八、總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
快速掌握Node.js之Window下配置NodeJs環(huán)境
快速掌握Node.js之Window下配置NodeJs環(huán)境,如何在Window下快速配置NodeJs環(huán)境,感興趣的小伙伴們可以參考一下2016-03-03
使用Node.js實(shí)現(xiàn)RESTful API的示例
Node.js可以用很少代碼簡(jiǎn)單地實(shí)現(xiàn)一個(gè)Web服務(wù),并且它有一個(gè)非?;钴S的社區(qū),通過(guò)Node出色的包管理機(jī)制(NPM)可以非常容易獲得各種擴(kuò)展支持。 對(duì)簡(jiǎn)單的應(yīng)用場(chǎng)景Node.js實(shí)現(xiàn)REST是一個(gè)非常合適的選擇。 本文介紹如何用Node.js實(shí)現(xiàn)REST服務(wù)。2017-08-08
淺談express 中間件機(jī)制及實(shí)現(xiàn)原理
本篇文章主要介紹了淺談express 中間件機(jī)制及實(shí)現(xiàn)原理,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-08-08
Node.js中使用計(jì)時(shí)器定時(shí)執(zhí)行函數(shù)詳解
這篇文章主要介紹了Node.js中使用計(jì)時(shí)器定時(shí)執(zhí)行函數(shù)詳解,本文使用了Node.js中的setTimeout和setInterval函數(shù),需要的朋友可以參考下2014-08-08
Nodejs 數(shù)組的隊(duì)列以及forEach的應(yīng)用詳解
這篇文章主要介紹了Nodejs 數(shù)組的隊(duì)列以及forEach的應(yīng)用詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2021-02-02
nodejs的http和https下載遠(yuǎn)程資源post數(shù)據(jù)實(shí)例
這篇文章主要為大家介紹了nodejs的http和https下載遠(yuǎn)程資源post數(shù)據(jù)實(shí)例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-09-09
詳解如何使用koa實(shí)現(xiàn)socket.io官網(wǎng)的例子
這篇文章主要介紹了詳解如何使用koa實(shí)現(xiàn)socket.io官網(wǎng)的例子,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-11-11
nodejs實(shí)現(xiàn)黑名單中間件設(shè)計(jì)
最近寫(xiě)的項(xiàng)目中涉及到防止灌水的功能,于是設(shè)計(jì)了黑名單中間件,跟大家分享一下,同時(shí)也希望大家有好的建議能夠拍磚.2014-06-06
Node.js項(xiàng)目依賴(lài)問(wèn)題的詳細(xì)解決步驟
在現(xiàn)代前端開(kāi)發(fā)中,Node.js 和 npm 是不可或缺的工具,然而,隨著項(xiàng)目的迭代和依賴(lài)包的更新,我們常常會(huì)遇到依賴(lài)沖突、構(gòu)建失敗等問(wèn)題,本文將通過(guò)一個(gè)實(shí)際案例,詳細(xì)講解如何解決 Node.js 項(xiàng)目中的依賴(lài)問(wèn)題,包括升級(jí) Node.js 和 npm、替換過(guò)時(shí)的依賴(lài)包、修復(fù)構(gòu)建錯(cuò)誤等2025-02-02

