Infrastructure

Cài đặt n8n
trên Ubuntu VPS

Bộ script bash cài đặt n8n workflow automation với Docker + Caddy + Let's Encrypt SSL + backup tự động. Một lệnh duy nhất, 5 phút là chạy.

Bash · Docker
Yêu cầu

Yêu cầu hệ thống

OS
Ubuntu 20.04+ / 22.04
RAM
1 GB trở lên (khuyến nghị 2 GB)
Domain
Sub-domain trỏ A-record về IP VPS
Access
SSH với quyền sudo
Cài đặt

Install 1 lệnh

1

Clone repo

git clone https://github.com/buithucdong/n8n-installation-script.git

Hoặc tải về thẳng các file .sh cần thiết.

2

Chạy installer

cd n8n-installation-script && sudo bash install_n8n.sh

Script sẽ hỏi domain, email (cho Let's Encrypt) rồi tự lo phần còn lại.

3

Truy cập n8n

https://your-domain.com

Setup admin user → bắt đầu build workflow.

Thành phần

Script cài đặt những gì

Docker + Docker Compose

Cài engine mới nhất, setup n8n container với volume persistent cho database.

Caddy reverse proxy

Caddy config tự động route trafffic và xử lý HTTPS — nhẹ hơn Nginx cho use case này.

Let's Encrypt SSL

Cert tự động cấp và renew qua Caddy. Không cần config thủ công certbot.

Backup hàng ngày

Cron job backup database + workflow JSON mỗi 24h, giữ 7 bản gần nhất.

Private network

Container n8n không expose port ra public — chỉ Caddy tiếp nhận request từ internet.

Environment sạch

File .env được tạo sẵn với secret key ngẫu nhiên, timezone Asia/Ho_Chi_Minh.

Reference

Upgrade / Migrate

Upgrade n8n lên version mới

sudo bash upgrade_n8n.shKéo image mới, restart container
docker compose logs -fTheo dõi log sau upgrade
docker compose psKiểm tra container running

Migrate sang VPS khác

sudo bash migrate_n8n.shExport toàn bộ data + config
scp backup.tar.gz user@new-vpsCopy sang VPS mới
sudo bash install_n8n.sh --restoreCài + restore từ backup
Troubleshooting

Sự cố thường gặp

SSL không cấp được

Kiểm tra A-record domain trỏ đúng IP VPS (dùng dig your-domain.com). Let's Encrypt cần DNS propagation xong trước khi chạy script.

Port 80/443 đã bị chiếm

Chạy sudo lsof -i :80 để xem process nào đang giữ. Tắt Nginx/Apache nếu có trước khi cài.

n8n không load (502 Bad Gateway)

Container có thể chưa start xong — chờ 30s rồi F5. Nếu vẫn lỗi: docker compose logs n8n để debug.

Restore backup thất bại

Backup cần cùng version n8n với môi trường restore. Upgrade n8n mới trước rồi restore data sau.

Cần support setup n8n cho doanh nghiệp?

D-Solutions setup n8n self-hosted, build workflow tự động hóa cho marketing / sales / operation.

Dịch vụ tự động hóa →