溫馨提示×

Node.js應用如何在Ubuntu上自動重啟

小樊
35
2025-09-08 22:48:22
欄目: 編程語言

在Ubuntu上自動重啟Node.js應用,可以使用以下幾種方法:

  1. 使用PM2(推薦)

PM2是一個功能強大的Node.js進程管理器,可以幫助您管理和守護Node.js應用程序。要使用PM2,請按照以下步驟操作:

a. 首先,確保您已經安裝了Node.js和npm。如果沒有,請訪問Node.js官方網站(https://nodejs.org/)下載并安裝。

b. 使用npm全局安裝PM2:

sudo npm install pm2 -g

c. 將您的Node.js應用程序啟動腳本添加到PM2:

pm2 start app.js --name my-app

這里,app.js是您的Node.js應用程序的入口文件,my-app是應用程序的名稱。

d. 設置PM2開機自啟動:

pm2 startup

按照提示操作,生成開機自啟動配置。

e. 保存當前進程列表,以便在系統重啟后恢復:

pm2 save

現在,您的Node.js應用程序將在Ubuntu啟動時自動運行,并在發生故障時自動重啟。

  1. 使用systemd

如果您更喜歡使用systemd來管理您的Node.js應用程序,可以按照以下步驟操作:

a. 創建一個新的systemd服務文件:

sudo nano /etc/systemd/system/my-app.service

這里,my-app是您的Node.js應用程序的名稱。

b. 將以下內容粘貼到服務文件中,根據需要進行修改:

[Unit]
Description=My Node.js App
After=network.target

[Service]
User=<your-user>
WorkingDirectory=/path/to/your/app
ExecStart=/usr/bin/node /path/to/your/app/app.js
Restart=always

[Install]
WantedBy=multi-user.target

<your-user>替換為您的用戶名,將/path/to/your/app替換為您的應用程序目錄。

c. 保存并關閉文件。

d. 重新加載systemd配置:

sudo systemctl daemon-reload

e. 啟動您的Node.js應用程序:

sudo systemctl start my-app

f. 設置開機自啟動:

sudo systemctl enable my-app

現在,您的Node.js應用程序將在Ubuntu啟動時自動運行,并在發生故障時自動重啟。

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