在Debian上部署JavaScript應用到線上,可按以下步驟操作:
安裝Node.js
使用NodeSource倉庫安裝指定版本(如16.x):
curl -fsSL https://deb.nodesource.com/setup_16.x | sudo -E bash -
sudo apt-get install -y nodejs
或通過NVM管理多版本:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash
source ~/.bashrc
nvm install 16
nvm use 16
上傳應用代碼
通過SCP/FTP/Git將項目文件上傳至服務器目錄,確保包含package.json
。
安裝依賴
進入項目目錄執行:
npm install
配置環境變量
export 變量名=值
。~/.bashrc
或/etc/environment
中添加,如:NODE_ENV=production
啟動應用
node app.js
(不推薦,無進程管理)。sudo npm install -g pm2
pm2 start app.js --name "my-app"
pm2 startup # 設置開機自啟
pm2 save # 保存進程列表
配置反向代理(可選)
用Nginx代理請求到Node.js端口(如3000):
sudo apt install nginx
sudo nano /etc/nginx/sites-available/yourdomain.com
添加配置:
server {
listen 80;
server_name yourdomain.com;
location / {
proxy_pass http://localhost:3000;
proxy_set_header Host $host;
}
}
啟用配置并重啟Nginx:
sudo ln -s /etc/nginx/sites-available/yourdomain.com /etc/nginx/sites-enabled/
sudo nginx -t && sudo systemctl restart nginx
配置HTTPS(可選)
使用Let’s Encrypt免費證書:
sudo apt install certbot python3-certbot-nginx
sudo certbot --nginx -d yourdomain.com
防火墻設置(可選)
開放HTTP/HTTPS端口:
sudo ufw allow 'Nginx Full'
sudo ufw reload
完成以上步驟后,應用即可通過域名或IP訪問。生產環境建議定期備份、監控日志,并更新依賴包以確保安全。