1. 程式人生 > 程式設計 >CentOS 8.2伺服器上安裝最新版Node.js的方法

CentOS 8.2伺服器上安裝最新版Node.js的方法

Node.js是一個開源JavaScript執行時環境。在這裡,您將學習如何在CentOS 8伺服器上安裝Node.js。

什麼是Node.js?

Node.js是一個開放原始碼,跨平臺的後端JavaScript執行時環境,可在Web瀏覽器外部執行JavaScript程式碼。Node.js使開發人員可以使用JavaScript編寫命令列工具並進行伺服器端指令碼編寫,即在伺服器端執行指令碼以在將頁面傳送到使用者的Web瀏覽器之前生成動態網頁內容。因此,Node.js代表了一個“ JavaScript無處不在”範例,統一了單一程式語言(而不是伺服器端和客戶端指令碼的不同語言)的Web應用程式開發。(來源:維基百科)

Node.js用C,C ++和JavaScript編寫。Node.js是根據MIT許可證分發的,可以從Node.js官方網站或Node.js Github儲存庫下載。

環境規格:

我們已配備了具有以下規格的最小CentOS 8 KVM計算機。

  • CPU - 2C
  • 記憶體-4 GB
  • 儲存空間-20 GB
  • 作業系統-CentOS 8.2
  • 主機名– nodejs-01.lianglab.cn
  • IP地址-192.168.6.175

更新Linux軟體包:

使用ssh客戶端作為root使用者與nodejs-01.centlinux.com連線。

按照最佳實踐,使用dnf命令更新Linux伺服器上已安裝的軟體包。

[root@nodejs-01 ~]# dnf update -y
Dependencies resolved.
Nothing to do.
Complete!

我們的Linux作業系統已經是最新的。因此,沒有更新任何程式包。在您的Linux伺服器上,輸出可能會有所不同。

驗證本安裝指南中使用的Linux作業系統和核心版本。

[root@nodejs-01 ~]# uname -r
4.18.0-193.el8.x86_64
[root@nodejs-01 ~]# cat /etc/redhat-release
CentOS Linux release 8.2.2004 (Core)

Linux Yum儲存庫安裝Node.js:

在CentOS 8上安裝Node.js的最簡單方法是使用Linux yum儲存庫。

在CentOS 8 yum儲存庫中,有兩個穩定的Node.js版本。這些是最常用的Node.js版本,可以在大多數情況下使用。

要獲取Linux yum儲存庫中可用的Node.js版本列表,可以使用以下dnf命令。

[root@nodejs-01 ~]# dnf module list nodejs
Last metadata expiration check: 0:19:08 ago on Tue 15 Dec 2020 08:46:52 PM CST.
CentOS-8 - AppStream - mirrors.tongdun.cn
Name  Stream Profiles         Summary    
nodejs  10 [d] common [d],development,minimal,s2i Javascript runtime 
nodejs  12  common [d],s2i Javascript runtime 

Hint: [d]efault,[e]nabled,[x]disabled,[i]nstalled
[root@nodejs-01 ~]# 

CentOS 8.2伺服器上安裝最新版Node.js的方法

使用dnf命令安裝所需版本的Node.js ,我們正在Linux伺服器上安裝Node.js v12。

[root@nodejs-01 ~]# dnf module install -y nodejs:12
Last metadata expiration check: 0:21:06 ago on Tue 15 Dec 2020 08:46:52 PM CST.
Dependencies resolved.
===================================================================================
 Package   Arch Version         Repo  Size
===================================================================================
Installing group/module packages:
 nodejs   x86_64 1:12.18.4-2.module_el8.2.0+530+cb1b9c8b AppStream 10 M
 npm    x86_64 1:6.14.6-1.12.18.4.2.module_el8.2.0+530+cb1b9c8b
                 AppStream 3.8 M
Installing weak dependencies:
 nodejs-docs  noarch 1:12.18.4-2.module_el8.2.0+530+cb1b9c8b AppStream 4.0 M
 nodejs-full-i18n x86_64 1:12.18.4-2.module_el8.2.0+530+cb1b9c8b AppStream 7.5 M
Installing module profiles:
 nodejs/common                 
Enabling module streams:
 nodejs     12              

Transaction Summary
===================================================================================
Install 4 Packages

Total download size: 26 M
Installed size: 109 M
Downloading Packages:
(1/4): nodejs-docs-12.18.4-2.module_el8.2.0+530+cb 32 MB/s | 4.0 MB  00:00 
(2/4): nodejs-full-i18n-12.18.4-2.module_el8.2.0+5 27 MB/s | 7.5 MB  00:00 
(3/4): npm-6.14.6-1.12.18.4.2.module_el8.2.0+530+c 22 MB/s | 3.8 MB  00:00 
(4/4): nodejs-12.18.4-2.module_el8.2.0+530+cb1b9c8 28 MB/s | 10 MB  00:00 
-----------------------------------------------------------------------------------
Total            69 MB/s | 26 MB  00:00  
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
 Running scriptlet: npm-1:6.14.6-1.12.18.4.2.module_el8.2.0+530+cb1b9c8b.x8 1/1 
 Preparing  :               1/1 
 Installing  : nodejs-docs-1:12.18.4-2.module_el8.2.0+530+cb1b9c8b.noa 1/4 
 Installing  : nodejs-full-i18n-1:12.18.4-2.module_el8.2.0+530+cb1b9c8 2/4 
 Installing  : npm-1:6.14.6-1.12.18.4.2.module_el8.2.0+530+cb1b9c8b.x86 3/4 
 Installing  : nodejs-1:12.18.4-2.module_el8.2.0+530+cb1b9c8b.x86_64  4/4 
 Running scriptlet: nodejs-1:12.18.4-2.module_el8.2.0+530+cb1b9c8b.x86_64  4/4 
 Verifying  : nodejs-1:12.18.4-2.module_el8.2.0+530+cb1b9c8b.x86_64  1/4 
 Verifying  : nodejs-docs-1:12.18.4-2.module_el8.2.0+530+cb1b9c8b.noar 2/4 
 Verifying  : nodejs-full-i18n-1:12.18.4-2.module_el8.2.0+530+cb1b9c8b 3/4 
 Verifying  : npm-1:6.14.6-1.12.18.4.2.module_el8.2.0+530+cb1b9c8b.x86 4/4 
Installed products updated.

Installed:
 nodejs-1:12.18.4-2.module_el8.2.0+530+cb1b9c8b.x86_64        
 nodejs-docs-1:12.18.4-2.module_el8.2.0+530+cb1b9c8b.noarch      
 nodejs-full-i18n-1:12.18.4-2.module_el8.2.0+530+cb1b9c8b.x86_64     
 npm-1:6.14.6-1.12.18.4.2.module_el8.2.0+530+cb1b9c8b.x86_64      

Complete!
[root@nodejs-01 ~]# 

CentOS 8.2伺服器上安裝最新版Node.js的方法

成功安裝後,請檢查Node.js和Node Package Manager(NPM)版本。

[root@nodejs-01 ~]# node -v
v12.18.4
[root@nodejs-01 ~]# npm -v
6.14.6

CentOS 8.2伺服器上安裝最新版Node.js的方法

使用NVM安裝Node.js:

從Linux yum儲存庫安裝Node.js很方便。但是您可能未在其中找到最新版本的Node.js。

例如,Node.js v14 LTS和v15已經發布,但在Linux yum儲存庫中不可用。

因此,如果您想安裝最新版本的Node.js,則必須使用Node Version Manager(NVM)。

通過使用NVM,您可以輕鬆地在Linux伺服器上安裝/解除安裝不同版本的Node.js。

NVM可從GitHub獲得。您可以在NVM Github儲存庫中檢視完整的專案詳細資訊。

您可以使用NVM文件中提供的指令碼來安裝NVM。

[root@nodejs-01 ~]# curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.37.0/install.sh | bash
 % Total % Received % Xferd Average Speed Time Time  Time Current
         Dload Upload Total Spent Left Speed
100 13527 100 13527 0  0 7056  0 0:00:01 0:00:01 --:--:-- 7052
=> Downloading nvm as script to '/root/.nvm'

=> Appending nvm source string to /root/.bashrc
=> Appending bash_completion source string to /root/.bashrc
=> Close and reopen your terminal to start using nvm or run the following to use it now:

export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion

已經安裝了NVM,現在可以使用nvm命令在Linux伺服器上安裝Node.js。

但是首先,列出可用的Node.js版本。

[root@nodejs-01 ~]# nvm list-remote
...
  v14.10.0
  v14.10.1
  v14.11.0
  v14.12.0
  v14.13.0
  v14.13.1
  v14.14.0
  v14.15.0 (LTS: Fermium)
  v14.15.1 (Latest LTS: Fermium)
  v15.0.0
  v15.0.1
  v15.1.0
  v15.2.0
  v15.2.1

儘管可以使用Node.js v15,但它是安裝LTS(長期支援)版本的更好方法,尤其是在生產計算機上安裝Node.js時。

您可以使用nvm命令安裝最新的LTS版本的Node.js。

[root@nodejs-01 ~]# nvm install --lts
Installing latest LTS version.
Downloading and installing node v14.15.1...
Downloading https://nodejs.org/dist/v14.15.1/node-v14.15.1-linux-x64.tar.xz...
######################################################################### 100.0%
Computing checksum with sha256sum
Checksums matched!
Now using node v14.15.1 (npm v6.14.8)
Creating default alias: default -> lts/* (-> v14.15.1)
[root@nodejs-01 ~]# node -v
v14.15.1
[root@nodejs-01 ~]# npm -v
6.14.8

同樣,您可以使用NVM切換到另一個版本的Node.js,如下所示。

[root@nodejs-01 ~]# nvm install v13.6.0
Downloading and installing node v13.6.0...
Downloading https://nodejs.org/dist/v13.6.0/node-v13.6.0-linux-x64.tar.xz...
######################################################################### 100.0%
Computing checksum with sha256sum
Checksums matched!
Now using node v13.6.0 (npm v6.13.4)

再次檢查Node.js和NPM的安裝版本。

[root@nodejs-01 ~]# node -v
v13.6.0
[root@nodejs-01 ~]# npm -v
6.13.4

建立和部署一個簡單的Node.js應用程式:

您可以通過編寫簡單的JavaScript來測試Node.js伺服器。

在vim編輯器中建立一個文字檔案。

[root@nodejs-01 ~]# vi Node.js_test.js

在此檔案中新增以下程式碼行。

const http = require('http');
const port = 9000;
const server = http.createServer((req,res) => {
 res.writeHead(200,{'Content-Type': 'text/plain'});
 res.end('Hello World Welcome lianglab\n');
});
server.listen(port,() => {
 console.log(`Server running at http://your-ip-address:${port}/`);
});

暫時允許服務埠9000 / TCP在Linux的防火牆。

[root@nodejs-01 ~]# firewall-cmd --add-port=9000/tcp
success

使用以下命令啟動Node.js偵錯程式程序。

[root@nodejs-01 src]# node --inspect Node.js_test.js
Debugger listening on ws://127.0.0.1:9229/a8393109-3aa9-41b0-8cca-0d8da13a67eb
For help,see: https://nodejs.org/en/docs/inspector
Server running at http://your-ip-address:9000/

使用Web瀏覽器或遵循Linux命令來測試您的Node.js應用程式。

[root@kvm-d-006188 tmp]# curl http://192.168.6.175:9000
Hello World Welcome lianglab
[root@kvm-d-006188 tmp]# 

CentOS 8.2伺服器上安裝最新版Node.js的方法

到此這篇關於CentOS 8.2伺服器上安裝最新版Node.js的文章就介紹到這了,更多相關CentOS 8.2安裝Node.js內容請搜尋我們以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援我們!