NỘI DUNG
Hướng dẫn cài đặt n8n trên Ubuntu đơn giản và nhanh chóng.

Yêu cầu hệ thống
Để cài đặt n8n, VPS của bạn cần đáp ứng các thông số sau. Nếu bạn chưa lựa chọn được VPS có thể tham khảo VPS tại AZDIGI.
- CPU: Tối thiểu 1 nhân
- RAM: Tối thiểu 1GB
- Dung lượng ổ cứng: Còn trống ít nhất 10GB
- Hệ điều hành: Ubuntu 22.04, Ubuntu 24.04 hoặc Debian 12 (hệ điều hành cần sạch, chưa cài đặt bất kỳ webserver nào như Apache hoặc Nginx).
Lưu ý: Đây là yêu cầu tối thiểu cho việc cài đặt, để chạy tốt, hoạt động tốt với workflow thì cấu hình bạn phải cao hơn nhiều so với yêu cầu tối thiểu.

Cập nhật hệ thống
Trước khi bắt đầu, hãy cập nhật hệ thống để đảm bảo mọi gói phần mềm đều ở phiên bản mới nhất:
apt update && sudo apt full-upgrade -y
reboot
Lệnh trên sẽ cập nhật toàn bộ hệ thống và khởi động lại VPS để áp dụng các thay đổi.
Cài đặt n8n trên VPS Ubuntu hoặc Debian
1. Cài đặt Node.js và npm
n8n yêu cầu Node.js và npm để hoạt động. Dưới đây là cách cài đặt phiên bản Node.js 20 LTS:
# Thêm kho NodeSource
curl -sL https://deb.nodesource.com/setup_20.x | sudo bash -
# Cài đặt Node.js và npm
apt install -y nodejs npm
# Kiểm tra phiên bản đã cài
node --version
npm --version

Kiểm tra và đảm bảo version node và npm đúng với bản cài đặt nhé. Nếu không bạn sẽ gặp lỗi ở các bước phía sau.
2. Cài đặt n8n
Sử dụng npm để cài đặt n8n toàn cục trên hệ thống:
npm install -g n8n
3. Cài đặt PM2 để quản lý tiến trình
PM2 là một công cụ hữu ích giúp chạy n8n liên tục và tự động khởi động lại nếu có lỗi:
npm install -g pm2
4. Khởi chạy n8n
Để khởi động n8n, sử dụng PM2 với cấu hình webhook URL tương ứng với subdomain của bạn. Trong hướng dẫn này tôi sẽ sử dụng sub có tên n8n.dotrungquan.info
Lưu ý: Domain/Subdomain này phải được trỏ về IP của VPS. Vì nếu không trỏ bạn sẽ không thể cài SSL được.
# Thay n8n.dotrungquan.info thành subdomain của bạn
WEBHOOK_URL=https://n8n.dotrungquan.info pm2 start n8n
# Lưu cấu hình PM2
pm2 save
# Thiết lập PM2 khởi động cùng hệ thống
pm2 startup

5. Cài đặt và cấu hình Nginx
Nginx sẽ hoạt động như một reverse proxy để chuyển hướng yêu cầu đến n8n. Cài đặt Nginx như sau:
apt install -y nginx
systemctl start nginx
systemctl enable nginx
6. Thiết lập cấu hình Nginx cho subdomain
Bây giờ bạn hãy tạo một file cấu hình cho Nginx như sau
nano /etc/nginx/conf.d/n8n.dotrungquan.info.conf
Dán nội dung sau vào file, đảm bảo thay n8n.dotrungquan.info
bằng domain/subdomain của bạn.
server {
listen 80;
server_name n8n.dotrungquan.info;
location / {
proxy_pass http://127.0.0.1:5678;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
}
Với lệnh nano
Bạn lưu file bằng Ctrl + O, nhấn Enter, sau đó thoát bằng Ctrl + X. Kiểm tra cấu hình và khởi động lại Nginx:
Sau khi dán nội dung file cấu hình vào, bạn lưu lại và chạy lệnh nginx -t
nếu thông báo syntax is ok - test is successful
thì cấu hình không có lỗi và bạn có thể tiếp tục bước tiếp theo.

7. Cài đặt chứng chỉ SSL với Certbot
Để bảo mật subdomain bằng HTTPS, sử dụng Certbot:
apt install -y certbot python3-certbot-nginx
certbot --nginx -d n8n.dotrungquan.info
Làm theo hướng dẫn của Certbot để hoàn tất cài đặt SSL. Khi hoàn thành, bạn sẽ thấy thông báo xác nhận chứng chỉ đã được cài đặt thành công.

8. Truy cập n8n
Mở trình duyệt và truy cập https://n8n.dotrungquan.info
để tiến hành tạo tài khoản n8n và bắt đầu sử dụng.


Như vậy là đã hoàn hoàn tất cài đặt n8n trên Ubuntu rồi. Giờ bạn có thể triển khai các Workflows để tối ưu hoá quy trình hoạt động rồi!
Chúc bạn thực hiện thành công.