在Debian系統上部署Node.js應用可以通過以下步驟完成:
首先,確保你的Debian系統是最新的:
sudo apt update
sudo apt upgrade -y
你可以使用NodeSource提供的Node.js二進制分發庫來安裝最新版本的Node.js和npm。
添加NodeSource倉庫:
curl -fsSL https://deb.nodesource.com/setup_16.x | sudo -E bash -
這里以Node.js 16為例,你可以根據需要選擇其他版本,例如setup_14.x
或setup_18.x
。
安裝Node.js和npm:
sudo apt install -y nodejs
驗證安裝:
node -v
npm -v
假設你已經有一個Node.js應用,或者你可以創建一個簡單的示例應用來測試。
創建一個新的目錄并進入該目錄:
mkdir my-node-app
cd my-node-app
初始化一個新的Node.js項目:
npm init -y
創建一個簡單的index.js
文件:
const express = require('express');
const app = express();
const port = 3000;
app.get('/', (req, res) => {
res.send('Hello World!');
});
app.listen(port, () => {
console.log(`App listening at http://localhost:${port}`);
});
安裝Express框架:
npm install express
Nginx可以用來處理HTTP請求并將它們轉發到你的Node.js應用。
安裝Nginx:
sudo apt install nginx -y
配置Nginx: 編輯Nginx配置文件:
sudo nano /etc/nginx/sites-available/default
將以下內容添加到文件中(根據你的應用路徑進行調整):
server {
listen 80;
server_name your_domain_or_ip;
location / {
proxy_pass http://localhost:3000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
}
重啟Nginx以應用配置:
sudo systemctl restart nginx
你可以使用pm2
來管理你的Node.js應用,使其在后臺運行并且自動重啟。
安裝pm2
:
sudo npm install pm2 -g
使用pm2
啟動你的應用:
pm2 start index.js --name my-node-app
查看應用狀態:
pm2 status
確保你的防火墻允許HTTP和HTTPS流量。
允許HTTP和HTTPS流量:
sudo ufw allow 'Nginx Full'
啟用防火墻:
sudo ufw enable
打開瀏覽器并訪問你的服務器IP地址或域名,你應該能看到你的Node.js應用正在運行。
通過以上步驟,你就可以在Debian系統上成功部署一個Node.js應用了。