Việc cập nhật n8n lên phiên bản mới nhất là thao tác quan trọng để đảm bảo hệ thống workflow của bạn hoạt động ổn định, được vá các lỗ hổng bảo mật và tiếp cận những tính năng tự động hóa mới nhất. Bài viết này sẽ hướng dẫn bạn chi tiết quy trình kiểm tra, sao lưu và nâng cấp n8n trên VPS Linux sử dụng Docker và Docker Compose dùng template của Vietnix.
Yêu cầu trước khi thực hiện
- Bạn cần có quyền truy cập root vào VPS thông qua SSH.
- Hệ thống đang chạy n8n bằng Docker Compose (thường nằm tại thư mục /home/n8n-deploy).
Lưu ý
Nếu bạn đã thay đổi cấu trúc template gốc (thêm container khác, thay đổi reverse-proxy không phải Caddy), bạn nên tự cấu hình thủ công hoặc khôi phục về template gốc trước khi tiếp tục để tránh lỗi không tương thích.
Bước 1: Sao lưu dữ liệu trước khi bắt đầu
Sao lưu là bước quan trọng nhất để tránh mất mát các workflow, dữ liệu queue hoặc cấu hình credentials trong trường hợp quá trình cập nhật gặp sự cố.
Sao lưu volume dữ liệu n8n
Bạn hãy chạy lệnh sau để dừng container và nén dữ liệu volume lại (thay /path/to/n8n-volumes bằng đường dẫn volume, thường là ./volumes hoặc /var/lib/docker/volumes):
docker-compose -f /home/n8n-deploy/docker-compose.yml down && tar czf n8n_backup_$(date +%Y%m%d).tar.gz /path/to/n8n-volumesSao lưu cơ sở dữ liệu Postgres
Bạn thực hiện lệnh sau để xuất dữ liệu database ra file SQL:
docker exec -it <postgres_container> pg_dumpall -U n8n > postgres_backup.sqlSau khi tạo xong các file backup, bạn nên tải các file backup này về máy tính cá nhân hoặc lưu trữ trên Cloud (Google Drive, S3) để đảm bảo an toàn tuyệt đối.
Bước 2: Kiểm tra tính toàn vẹn của template
Trước khi cập nhật, bạn cần xác nhận cấu trúc template chưa bị thay đổi so với mặc định. Template chuẩn thường bao gồm 3 container chính: n8n, postgres và caddy.
Bạn hãy truy cập vào thư mục cài đặt và liệt kê các container đang chạy bằng lệnh:
cd /home/n8n-deploy && docker ps
Hệ thống phải hiển thị đúng 3 container với tên cố định:
- n8n: Container chính chạy ứng dụng n8n.
- postgres: Container chứa cơ sở dữ liệu.
- caddy: Container đóng vai trò là reverse-proxy.
Nếu phát hiện thiếu hoặc thừa container, hoặc nếu bạn đã thay đổi reverse-proxy (không phải Caddy) thì bạn nên dừng lại. Trong trường hợp này, bạn cần tự cấu hình cập nhật thủ công hoặc khôi phục về template gốc để tránh lỗi tương thích.
Bước 3: Xác định phiên bản n8n hiện tại
Bạn cần kiểm tra phiên bản hiện tại để quyết định xem có cần thiết phải nâng cấp hay không, đồng thời ghi lại phiên bản này để có thể quay lại (rollback) nếu phiên bản mới bị lỗi.
Bạn chạy lệnh sau để liệt kê tất cả image liên quan đến n8n:
docker images | grep n8nioKết quả sẽ hiển thị tên image, thường là n8nio/n8n:latest hoặc một phiên bản cụ thể (ví dụ: n8nio/n8n:1.0.0).

Để xem chính xác phiên bản đang chạy bên trong file cấu hình, bạn sử dụng lệnh:
cat /home/n8n-deploy/docker-compose.yml | grep n8nio
Hoặc bạn có thể kiểm tra trực tiếp phiên bản đang hoạt động bằng lệnh:
docker inspect n8nio/n8n | grep -i version
docker exec -it n8n n8n --version # Nếu container đang chạy
Bước 4: Thực hiện cập nhật n8n
Sau khi đã xác nhận template toàn vẹn và sao lưu dữ liệu, bạn tiến hành tải image mới và khởi động lại hệ thống.
1. Dừng các container đang chạy
Bạn di chuyển vào thư mục deploy và dừng dịch vụ:
cd /home/n8n-deploy && docker-compose down
2. Tải về image mới nhất
Bạn thực hiện lệnh pull để tải phiên bản mới nhất từ Docker Hub (thay latest bằng phiên bản chỉ định nếu muốn):
docker pull n8nio/n8n:latest
Nếu trước đó bạn set cứng một phiên bản cụ thể trong file docker-compose.yml, bạn cần mở file này bằng trình soạn thảo nano và sửa lại tag image thành n8nio/n8n:latest.

4. Khởi động lại hệ thống
Bạn chạy lệnh sau để dựng lại các container với image vừa tải:
docker-compose up -d
Bước 5: Kiểm tra hoạt động
Sau khi khởi động, bạn hãy kiểm tra trạng thái các container:
docker-compose ps
Đồng thời, bạn nên xem log để đảm bảo không có lỗi phát sinh:
docker logs <container_id>Cuối cùng, bạn truy cập n8n thông qua trình duyệt web (theo địa chỉ IP VPS hoặc tên miền) và thử chạy một vài workflow đơn giản để đảm bảo hệ thống đã vận hành ổn định.
Một số lưu ý về bảo mật
Để hệ thống hoạt động ổn định lâu dài, bạn cần lưu ý những điểm sau:
- Xử lý sự cố: Nếu quá trình cập nhật gặp lỗi nghiêm trọng, bạn hãy thực hiện Rollback (quay lại phiên bản cũ ở bước 3) bằng lệnh:
docker-compose down && docker pull n8nio/n8n:<old_version> && docker-compose up -d- Giám sát: Bạn nên thường xuyên sử dụng
docker statsđể kiểm tra mức tiêu thụ tài nguyên của n8n vàdocker logs -fđể theo dõi log. - Cập nhật nền tảng: Đừng quên cập nhật Docker và hệ điều hành bằng lệnh
sudo apt update && sudo apt upgrade docker-ce. Hoặc bạn cũng có thể thêm cron job tự động cập nhật phiên bản n8n định kỳ hàng tháng với lệnh:0 2 1 * * cd /home/n8n-deploy && docker-compose pull && docker-compose up -d.
Việc nâng cấp n8n định kỳ giúp hệ thống của bạn luôn được bảo mật và tối ưu hiệu suất. Bằng cách tuân thủ quy trình sao lưu và kiểm tra kỹ lưỡng như hướng dẫn trên, bạn có thể thực hiện việc cập nhật một cách an toàn và tự động mà không lo mất mát dữ liệu. Nếu bạn gặp bất kỳ khó khăn nào trong quá trình thao tác hoặc cần tư vấn chuyên sâu hơn về vấn đề kỹ thuật, đừng ngần ngại liên hệ với đội ngũ kỹ thuật của Vietnix để được hỗ trợ nhanh chóng và hiệu quả nhất.
VIETNIX – DỊCH VỤ HOSTING, VPS TỐC ĐỘ CAO, ỔN ĐỊNH, BẢO MẬT
- Địa chỉ: 265 Hồng Lạc, Phường Bảy Hiền, Thành Phố Hồ Chí Minh
- Điện thoại: 1800 1093
- Email liên hệ: sales@vietnix.com.vn
- Website: https://vietnix.vn/

