溫馨提示×

Ubuntu系統Node.js項目如何部署

小樊
49
2025-06-06 19:44:57
欄目: 編程語言

在Ubuntu系統上部署Node.js項目可以通過多種方式進行,以下是詳細的步驟指南:

使用Docker部署Node.js項目

  1. 環境準備
  • 安裝Docker:確保你已經在機器上安裝了Docker。你可以從Docker官網下載并安裝適合你操作系統的Docker版本。
  1. 創建Node.js應用
  • 創建項目目錄:
    mkdir my-node-app
    cd my-node-app
    
  • 初始化Node.js項目:
    npm init -y
    
  • 安裝必要的依賴(例如,Express框架):
    npm install express
    
  • 編寫應用代碼:創建一個app.js文件,并添加以下簡單的Node.js代碼:
    const express = require('express');
    const app = express();
    const port = 3000;
    app.get('/', (req, res) => {
      res.send('Hello, Docker!');
    });
    app.listen(port, () => {
      console.log(`App listening at http://localhost:${port}`);
    });
    
  1. 創建Dockerfile
  • 在項目根目錄下創建一個名為Dockerfile的文件,并添加以下內容:
    # 使用官方的Node.js運行時作為基礎鏡像
    FROM node:14
    # 創建應用目錄
    WORKDIR /usr/src/app
    # 安裝應用依賴
    COPY package*.json ./
    RUN npm install
    # 復制應用代碼
    COPY . .
    # 對外暴露端口
    EXPOSE 3000
    # 啟動應用
    CMD ["node", "app.js"]
    
  1. 構建Docker鏡像
  • 在項目目錄中運行以下命令來構建Docker鏡像:
    docker build -t my-node-app .
    
  1. 運行Docker容器
  • 構建完成后,運行以下命令來啟動Docker容器:
    docker run -p 3000:3000 my-node-app
    

使用PM2和Nginx部署Node.js項目

  1. 安裝Node.js和npm
  • 更新系統軟件包:
    sudo apt update
    sudo apt upgrade
    
  • 安裝Node.js和npm:
    sudo apt install nodejs npm
    
  • 驗證安裝:
    node -v
    npm -v
    
  1. 創建Node.js應用程序
  • 創建項目目錄:
    mkdir my-node-app
    cd my-node-app
    
  • 初始化項目:
    npm init -y
    
  • 安裝項目依賴:
    npm install express
    
  • 創建服務器文件(例如server.js):
    const express = require('express');
    const app = express();
    const port = 3000;
    app.get('/', (req, res) => {
      res.send('Hello World!');
    });
    app.listen(port, () => {
      console.log(`Server running at http://localhost:${port}`);
    });
    
  1. 使用PM2管理Node.js進程
  • 安裝PM2:
    sudo npm install -g pm2
    
  • 啟動Node.js應用:
    pm2 start server.js
    
  • 設置PM2開機自啟動:
    pm2 startup
    
  • 查看應用狀態:
    pm2 status
    
  1. 配置Nginx反向代理
  • 安裝Nginx:
    sudo apt install nginx
    
  • 配置Nginx:
    sudo nano /etc/nginx/sites-available/default
    
    在配置文件中添加以下內容:
    server {
      listen 80;
      server_name example.com;
      location / {
        proxy_pass http://127.0.0.1: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
    
  1. 配置防火墻(可選):
  • 允許HTTP(80)和HTTPS(443)流量:
    sudo ufw allow 'Nginx Full'
    

通過以上步驟,你可以在Ubuntu上成功部署你的Node.js項目。根據你的具體需求,可能還需要進行其他配置和優化。

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