溫馨提示×

如何在centos上部署nodejs應用

小樊
55
2025-04-04 13:38:03
欄目: 編程語言

在CentOS上部署Node.js應用通常涉及以下幾個步驟:

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

    # 導入NodeSource庫的GPG密鑰
    curl -sL https://rpm.nodesource.com/setup_14.x | sudo bash -
    
    # 安裝Node.js和npm
    sudo yum install -y nodejs
    

    上面的命令會安裝Node.js 14.x版本及其對應的npm包管理器。你可以將14.x替換為你需要的版本。

  2. 上傳你的Node.js應用: 將你的Node.js應用上傳到CentOS服務器。你可以使用scp、rsync或者通過Git等方式來上傳。

  3. 安裝依賴: 在你的應用目錄中,運行以下命令來安裝所有必要的npm包:

    npm install
    
  4. 配置環境變量(可選): 如果你的應用需要特定的環境變量,比如數據庫連接字符串或者API密鑰,你可以將這些變量設置為環境變量。你可以在~/.bashrc~/.bash_profile文件中設置,或者在啟動應用時通過命令行傳遞。

    export NODE_ENV=production
    export YOUR_VARIABLE_NAME=value
    

    設置完環境變量后,運行source ~/.bashrcsource ~/.bash_profile來使變量生效。

  5. 啟動應用: 使用npm來啟動你的Node.js應用:

    node app.js
    

    其中app.js是你的應用入口文件。為了保持應用持續運行,你可以使用pm2這樣的進程管理器。

    # 全局安裝pm2
    sudo npm install pm2 -g
    
    # 使用pm2啟動應用
    pm2 start app.js --name "my-app"
    
    # 查看應用狀態
    pm2 status
    
    # 停止應用
    pm2 stop my-app
    
    # 重啟應用
    pm2 restart my-app
    
  6. 配置防火墻: 如果你的應用需要對外提供服務,確保你的CentOS防火墻允許外部訪問你的應用端口(默認是3000)。

    sudo firewall-cmd --permanent --zone=public --add-port=3000/tcp
    sudo firewall-cmd --reload
    
  7. 使用Nginx作為反向代理(可選): 為了提高性能和安全性,你可以使用Nginx作為Node.js應用的反向代理。

    # 安裝Nginx
    sudo yum install nginx -y
    
    # 啟動Nginx服務
    sudo systemctl start nginx
    
    # 設置Nginx開機自啟
    sudo systemctl enable nginx
    
    # 配置Nginx
    # 編輯Nginx配置文件,通常位于/etc/nginx/nginx.conf或/etc/nginx/conf.d/default.conf
    sudo vi /etc/nginx/conf.d/my-app.conf
    
    # 添加以下內容
    server {
        listen 80;
        server_name my-app.com; # 你的域名或公網IP
    
        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;
        }
    }
    
    # 重啟Nginx服務
    sudo systemctl restart nginx
    

按照以上步驟,你應該能夠在CentOS上成功部署你的Node.js應用。記得根據你的具體需求調整配置。

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