溫馨提示×

如何在CentOS上部署Node.js微服務

小樊
46
2025-06-14 07:23:34
欄目: 編程語言

在CentOS上部署Node.js微服務涉及幾個步驟,包括安裝Node.js、設置環境、編寫和測試代碼、以及配置和啟動服務。以下是一個詳細的指南:

1. 安裝Node.js

首先,你需要在CentOS上安裝Node.js。你可以使用NodeSource的二進制分發庫來安裝最新版本的Node.js。

使用NodeSource安裝Node.js

  1. 添加NodeSource庫

    curl -sL https://rpm.nodesource.com/setup_14.x | sudo bash -
    
  2. 安裝Node.js

    sudo yum install -y nodejs
    
  3. 驗證安裝

    node -v
    npm -v
    

2. 設置環境

確保你的環境變量設置正確,以便Node.js和npm命令可以在任何地方運行。

echo "export PATH=\$PATH:/usr/local/bin/node:/usr/local/bin/npm" >> ~/.bashrc
source ~/.bashrc

3. 編寫和測試代碼

編寫你的Node.js微服務代碼,并使用npm進行依賴管理。

示例項目結構

my-node-service/
├── app.js
├── package.json
└── package-lock.json

創建package.json

npm init -y

安裝依賴

npm install express

編寫app.js

const express = require('express');
const app = express();
const port = 3000;

app.get('/', (req, res) => {
  res.send('Hello World!');
});

app.listen(port, () => {
  console.log(`Example app listening at http://localhost:${port}`);
});

測試代碼

node app.js

訪問 http://localhost:3000 應該會看到 “Hello World!”。

4. 配置和啟動服務

為了在生產環境中運行Node.js應用,你需要進行一些配置和啟動服務的步驟。

使用PM2管理Node.js應用

PM2是一個進程管理器,可以幫助你管理和監控Node.js應用。

  1. 安裝PM2

    sudo npm install pm2 -g
    
  2. 啟動應用

    pm2 start app.js --name my-node-service
    
  3. 查看應用狀態

    pm2 status
    
  4. 停止應用

    pm2 stop my-node-service
    
  5. 重啟應用

    pm2 restart my-node-service
    

配置Nginx作為反向代理

為了提高性能和安全性,你可以使用Nginx作為反向代理。

  1. 安裝Nginx

    sudo yum install nginx -y
    
  2. 啟動Nginx

    sudo systemctl start nginx
    sudo systemctl enable nginx
    
  3. 配置Nginx

    編輯 /etc/nginx/conf.d/my-node-service.conf 文件:

    server {
        listen 80;
        server_name your_domain.com;
    
        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;
        }
    }
    
  4. 重啟Nginx

    sudo systemctl restart nginx
    

5. 配置防火墻

確保你的防火墻允許HTTP和HTTPS流量。

sudo firewall-cmd --permanent --zone=public --add-service=http
sudo firewall-cmd --permanent --zone=public --add-service=https
sudo firewall-cmd --reload

6. 監控和日志

使用PM2的監控和日志功能來管理你的應用。

  1. 查看日志

    pm2 logs my-node-service
    
  2. 監控應用

    pm2 monit
    

通過以上步驟,你應該能夠在CentOS上成功部署一個Node.js微服務。

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