溫馨提示×

Ubuntu上Node.js項目如何部署

小樊
64
2025-05-09 13:09:24
欄目: 編程語言

在Ubuntu上部署Node.js項目通常涉及以下幾個步驟:

  1. 安裝Node.js和npm: 首先,你需要在你的Ubuntu系統上安裝Node.js和npm。你可以使用NodeSource二進制分發庫來安裝最新版本的Node.js。

    # 導入NodeSource庫的密鑰
    curl -fsSL https://deb.nodesource.com/setup_16.x | sudo -E bash -
    
    # 安裝Node.js和npm
    sudo apt-get install -y nodejs
    

    這里setup_16.x是Node.js 16.x版本的安裝腳本,你可以根據需要替換為其他版本。

  2. 上傳項目到服務器: 你可以使用SCP、SFTP或其他文件傳輸方法將你的Node.js項目上傳到Ubuntu服務器。

    scp -r /path/to/your/project username@your_server_ip:/path/to/destination
    
  3. 安裝項目依賴: 在項目目錄中,運行以下命令來安裝項目的依賴包。

    cd /path/to/your/project
    npm install
    
  4. 配置環境變量(可選): 如果你的應用需要特定的環境變量,你可以在服務器上設置它們。通常,這些變量會在.env文件中定義,并通過dotenv包加載。

  5. 啟動Node.js應用: 使用npm腳本來啟動你的Node.js應用。在你的package.json文件中,你應該有一個start腳本。

    npm start
    

    或者,如果你想手動啟動應用,可以使用:

    node app.js
    

    其中app.js是你的主應用文件。

  6. 使用進程管理器(推薦): 為了確保你的Node.js應用在后臺穩定運行,你可以使用進程管理器,如PM2。

    # 安裝PM2
    sudo npm install pm2 -g
    
    # 使用PM2啟動你的應用
    pm2 start app.js --name "your-app-name"
    
    # 查看應用狀態
    pm2 status
    
    # 保存當前進程列表以便重啟后自動恢復
    pm2 save
    
  7. 配置Nginx反向代理(可選): 如果你想通過HTTP/HTTPS訪問你的Node.js應用,你可能需要配置Nginx作為反向代理。

    # 安裝Nginx
    sudo apt-get install nginx
    
    # 配置Nginx
    sudo nano /etc/nginx/sites-available/your-app
    

    在打開的文件中,添加一個server塊來代理請求到你的Node.js應用。

    server {
        listen 80;
        server_name your_domain.com;
    
        location / {
            proxy_pass http://localhost:3000; # Node.js應用的端口
            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;
        }
    }
    

    然后,創建一個符號鏈接到sites-enabled目錄,并重啟Nginx。

    sudo ln -s /etc/nginx/sites-available/your-app /etc/nginx/sites-enabled/
    sudo nginx -t # 測試配置文件是否有誤
    sudo systemctl restart nginx
    
  8. 設置防火墻規則(可選): 如果你的服務器啟用了防火墻,確保開放了Node.js應用使用的端口。

    sudo ufw allow 3000
    

    這里假設你的Node.js應用運行在3000端口。

以上步驟應該可以幫助你在Ubuntu上部署Node.js項目。記得根據你的具體需求調整這些步驟。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女