Điều kiện để cài đặt n8n trên Hosting cPanel
Để có thể cài đặt và vận hành n8n trên hosting sử dụng cPanel, cần đảm bảo một số điều kiện như:
- Hosting cần hỗ trợ Node.js: Tốt nhất là từ phiên bản 16 trở lên. Một số nhà cung cấp hosting giới hạn Node.js ở mức cơ bản, vì vậy cần kiểm tra kỹ khả năng cấu hình và quyền truy cập vào môi trường Node.
- Tạo subdomain hoặc thư mục riêng để chạy n8n: Để dễ dàng quản lý và truy cập, nên tạo một subdomain như automation.tenmiencuaban.com hoặc một thư mục như tenmiencuaban.com/n8n. Điều này cũng giúp cấu hình bảo mật và SSL dễ dàng hơn
- Thiết lập Database nếu muốn lưu trữ lâu dài: n8n mặc định có thể chạy với SQLite. Tuy nhiên, nếu cần mở rộng hoặc chia sẻ workflow, nên sử dụng: PostgreSQL hoặc MySQL.

Các bước cài đặt n8n trên Hosting cPanel
Để thiết lập n8n trên hosting cPanel bạn sẽ cần thực hiện theo 5 bước căn bản:
- Bước 1: Tạo domain lưu trữ n8n
- Bước 2: Tạo SSL cho domain
- Bước 3: Tạo Node.js App trên cPanel
- Bước 4: Cài đặt n8n
- Bước 5: Cấu hình lại Node.js app
Bước 1: Tạo Domain lưu trữ n8n
Đăng nhập vào tài khoản cPanel của bạn. Sau đó tạo thêm 1 domain mới là nơi lưu trữ của n8n. Trong mục “Domains”, chọn Domains -> Create a new domain. Điền thông tin của tên miền hoặc subdomain bạn muốn sau đó Submit để tạo:


Bước 2: Tạo SSL cho domain của bạn
Mục Security chọn SSL/TLS status. Chọn domain bạn vừa tạo và chọn Run AutoSSL để tạo SSL miễn phí, khi cài đặt thành công sẽ có vòng tròn xanh là thành công:


Bước 3: Tạo Node App trên cPanel
Trong mục Software -> Setup Node.js App. Sau đó chọn Create Application để tạo ứng dụng Nodejs.


Sẽ có các mục thông tin như sau:
- Node.js Version: phiên bản node.js, để đảm bảo bạn nên chọn phiên bản mới nhất (ví dụ: 22.8.0).
- Application Mode: Môi trường của Nodejs. Chọn Production
- Application Root: Thư mục cài đặt n8n, bạn cần điền thư mục mà bạn sẽ triển khai ứng dụng n8n (Thường sẽ là thư mục khi bạn tạo domain được tạo ra)
- Application URL: Bạn chọn domain hoặc subdomain đã thêm (ví dụ: n8n.tenmiencuaban.com).
- Application Startup File: Bạn để trống mặc định và sẽ thay đổi sau khi đã cài đặt n8n.
Sau đó chọn Create để tạo. Khi tạo xong sẽ hiên ra phần lệnh để kích hoạt nơi vào của môi trường, bạn cần copy lại. Tạo xong bạn vào domain để kiểm tra:


Bước 4: Cài đặt n8n
Bạn vào phần “Terminal” sau đó sao chép câu lênh khi tạo xong Nodejs app khi nãy và chạy.

Sau đó dùng lệnh npm init -y để khởi tạo NPM. Chạy tiếp npm install n8n để cài đặt n8n.

Sẽ mất chút thời gian để cài đặt. Khi hoàn tất bạn vào thư mục lưu trữ n8n khi nãy bạn chọn ở phần cài đặt nodejs app để kiểm tra, Sẽ thấy có thư mục n8n_modules:

Bước 5: Cấu hình lại Nodejs App
Bạn vào lại Nodejs khi nãy đã tạo chọn để chỉnh sửa:

Sửa Application startup file thành file trong đường dẫn sau node_modules/n8n/bin/n8n:

Trong phần Enviroments variable add thêm các biến môi trường. Sau đó chọn Save để lưu lại:
N8N_BASIC_AUTH_ACTIVE – true
N8N_BASIC_AUTH_USER – [username] (tuỳ chọn)
N8N_BASIC_AUTH_PASSWORD – [password] (tuỳ chọn)
WEBHOOK_URL – [https://your-installation-domain.com]

Chọn tiếp Restart để khởi động lại dịch vụ sau khi thêm cấu hình. Sau khi restart xong, bạn vào lại domain để thấy giao diện setup của n8n. Bạn có thể đăng ký thử tài khoản và chọn Next.

Sau khi thiết lập xong sẽ là giao diện của n8n như sau:

Vậy là bạn đã hoàn thành các bước cài đặt n8n trên Hosting cPanel.
Một số mẹo tối ưu khi dùng n8n bạn nên biết
Sau khi cài đặt, bạn có thể tham khảo một số cách tối ưu n8n để sử dụng hiệu quả, năng suất hơn. Cụ thể như:
Tự động khởi động lại n8n khi server reboot
Trong trường hợp máy chủ bị khởi động lại (do bảo trì, lỗi hệ thống, v.v.), tiến trình n8n sẽ bị dừng. Để tránh phải khởi động thủ công mỗi lần như vậy, bạn nên sử dụng pm2 kết hợp lệnh:
pm2 startup
pm2 save
Việc này giúp thiết lập n8n chạy tự động cùng hệ thống ngay khi server khởi động lại.

Sử dụng Webhook hoặc cron trong n8n
n8n hỗ trợ trigger các workflow qua nhiều hình thức, trong đó hiệu quả nhất là:
- Webhook: Cho phép tự động kích hoạt flow khi có sự kiện từ bên ngoài (ví dụ: gửi form, đơn hàng mới,…).
- Cron Trigger: Giúp lập lịch chạy các workflow định kỳ (ví dụ: mỗi ngày 6h sáng gửi báo cáo).
Sử dụng linh hoạt hai hình thức này sẽ giúp tự động hóa tối đa và giảm tải cho server.
Sao lưu dữ liệu và flow định kỳ
Để đảm bảo an toàn, nên thiết lập cơ chế sao lưu định kỳ:
- Cơ sở dữ liệu (PostgreSQL hoặc SQLite): Lưu trữ thông tin về flow, lịch sử chạy, biến,…
- Thư mục lưu file cấu hình của n8n (nếu có chỉnh sửa): Bao gồm .env, settings, các file môi trường.
Nên thực hiện sao lưu tự động mỗi ngày hoặc mỗi tuần, và lưu trữ tại vị trí ngoài máy chủ chính (ví dụ: Google Drive, Dropbox, hoặc VPS phụ).

Câu hỏi thường gặp
Có thể chạy n8n mà không cần SSH không?
Trên lý thuyết, có thể chạy n8n nếu hosting hỗ trợ Node.js và cho phép cài đặt ứng dụng qua Giao diện cPanel. Tuy nhiên không có SSH sẽ gây khó khăn trong việc:
- Cài đặt thủ công các gói phụ thuộc (npm/yarn, pm2)
- Quản lý process của n8n
- Khó thao tác khi cần khởi động lại hoặc cập nhật
Do đó nên có quyền SSH để đảm bảo kiểm soát hoàn toàn quá trình cài đặt và vận hành.
Cài n8n có làm chậm website trên hosting không?
Điều này còn phụ thuộc vào tài nguyên của gói hosting:
- Nếu hosting yếu hoặc dùng chung tài nguyên với website chính, việc chạy n8n (một ứng dụng Node.js liên tục) có thể làm giảm hiệu suất website.
- Nếu tách riêng subdomain/thư mục và tài nguyên đủ mạnh, ảnh hưởng sẽ rất nhỏ.
Vì vậy nên cân nhắc dùng VPS hoặc hosting riêng cho n8n. Tại LANIT có các gói Cloud VPS có đa dạng phù hợp với nhu cầu sử dụng của nhiều cá nhân, doanh nghiệp.
Lời kết
Sử dụng n8n trên Hosting cPanel mang lại rất nhiều lợi ích. Tuy nhiên nếu chạy quy mô lớn tốt hơn hết bạn nên sử dụng VPS để chạy n8n. Qua bài hướng dẫn trên LANIT hy vọng bạn sẽ biết cách cài đặt n8n trên Hosting cPanel, đồng thời biết cách tối ưu khi sử dụng công cụ này!
Tham khảo thêm các bài viết cùng chủ đề: