Mục lục

Tự động chạy n8n với PM2

Hướng dẫn cài đặt n8n trên máy Local và cấu hình tự động khởi động cùng hệ điều hành bằng PM2.

Nếu bạn chạy n8n bằng lệnh n8n start thông thường, quy trình sẽ dừng khi bạn tắt Terminal. Để n8n chạy ngầm (background) và tự động khởi động lại khi bật máy, chúng ta sẽ sử dụng PM2 - trình quản lý process mạnh mẽ cho Node.js.

1. Yêu cầu chuẩn bị

Đảm bảo bạn đã cài đặt Node.js trên máy tính.

  • Kiểm tra bằng lệnh: node -v
  • Nếu chưa có, hãy tải tại nodejs.org (khuyên dùng bản LTS).

2. Cài đặt n8n và PM2

Mở Terminal (hoặc Command Prompt/PowerShell trên Windows) và chạy các lệnh sau:

Cài đặt n8n (nếu chưa có)

bash:
npm install n8n -g

Cài đặt PM2

bash:
npm install pm2 -g

3. Khởi chạy n8n với PM2

Thay vì gõ n8n start, chúng ta sẽ yêu cầu PM2 quản lý n8n:

bash:
pm2 start n8n

Nếu thành công, bạn sẽ thấy một bảng danh sách process hiện ra với tên n8n và trạng thái online.

PM2 Process List

Lúc này, n8n đã chạy ngầm tại http://localhost:5678.

4. Cấu hình tự động khởi động (Auto-Startup)

Đây là bước quan trọng nhất để n8n tự bật khi bạn khởi động lại máy tính.

Bước 4.1: Tạo Startup Script

Chạy lệnh sau để PM2 phát hiện hệ điều hành và tạo script khởi động:

bash:
pm2 startup

Lưu ý:

  • Trên Windows: Bạn có thể cần cài thêm thư viện hỗ trợ:
    bash:
    npm install pm2-windows-startup -g
    pm2-startup install
  • Trên Mac/Linux: Lệnh pm2 startup sẽ in ra một dòng lệnh (command) bắt đầu bằng sudo.... Bạn hãy copy và chạy dòng lệnh đó.

Bước 4.2: Lưu trạng thái hiện tại

Sau khi n8n đã chạy và startup script đã được cài, hãy lệnh cho PM2 "ghi nhớ" danh sách các process đang chạy hiện tại:

bash:
pm2 save

Lệnh này sẽ lưu danh sách (Dump process list) để PM2 biết cần khôi phục process nào khi khởi động lại.

5. Các lệnh PM2 thường dùng

Trong quá trình sử dụng, bạn sẽ cần quản lý n8n process:

  • Xem log (để debug lỗi):

    bash:
    pm2 logs n8n

    (Dùng pm2 logs n8n --lines 100 để xem nhiều dòng hơn)

  • Dừng n8n:

    bash:
    pm2 stop n8n
  • Khởi động lại n8n:

    bash:
    pm2 restart n8n
  • Cập nhật n8n phiên bản mới:

    bash:
    npm install n8n -g
    pm2 restart n8n

6. Gỡ bỏ n8n khỏi PM2

Nếu bạn không muốn n8n chạy tự động nữa:

bash:
pm2 stop n8n
pm2 delete n8n
pm2 save
Quảng cáo
mdhorizontal