Giới Thiệu
n8n là một công cụ workflow automation mã nguồn mở, giúp tự động hóa các quy trình làm việc thông qua giao diện trực quan mà không cần lập trình phức tạp. Trong bài viết này, chúng ta sẽ hướng dẫn cách cài đặt n8n trong Docker bằng Docker Compose với cấu hình HTTPS.
Yêu Cầu Hệ Thống
Trước khi bắt đầu, hãy đảm bảo rằng bạn đã cài đặt:
- Docker (Hướng dẫn cài đặt)
- Docker Compose (Hướng dẫn cài đặt)
Bước 1: Tạo Thư Mục Dự Án
Trước tiên, hãy tạo một thư mục chứa cấu hình của n8n và di chuyển vào đó:
mkdir -p ~/n8n && cd ~/n8n
Bước 2: Tạo File docker-compose.yml
Tạo một file docker-compose.yml
với nội dung sau:
version: "3"
services:
n8n:
image: n8nio/n8n
container_name: n8n
restart: always
ports:
- "5678:5678"
volumes:
- /path/to/n8n_data:/home/node/.n8n
environment:
- N8N_HOST=<your-domain>
- N8N_PORT=5678
- N8N_PROTOCOL=https
- WEBHOOK_TUNNEL_URL=https://<your-domain>/
- WEBHOOK_URL=https://<your-domain>/
- N8N_PUSH_BACKEND=sse # Chọn "sse" hoặc "websocket"
- N8N_DEFAULT_TRUST_PROXY=true
- N8N_PAYLOAD_SIZE_MAX=50mb
volumes:
n8n_data:
external: true
Giải thích cấu hình:
- Volumes: Dữ liệu của n8n sẽ được lưu tại
/path/to/n8n_data
. Bạn thay đường dẫn này bằng thư mục phù hợp trên máy chủ. - Ports: Mở cổng
5678
để truy cập n8n. - HTTPS: Sử dụng giao thức
https
vớiWEBHOOK_TUNNEL_URL
. - Cấu hình backend: Dùng SSE (Server-Sent Events) hoặc WebSocket.
- Tăng giới hạn payload: Cho phép gửi request có kích thước lên đến
50mb
.
Bước 3: Chạy n8n với Docker Compose
Sau khi tạo file docker-compose.yml
, bạn chạy lệnh sau để khởi động n8n:
docker-compose up -d
Lệnh này sẽ:
✅ Tải về image n8n (nếu chưa có)
✅ Khởi động container n8n
✅ Chạy n8n ở chế độ detached (-d) (nền)
Kiểm tra container có chạy không:
docker ps
Nếu thấy n8n đang chạy, bạn có thể truy cập tại:
🔗 https://<your-domain>
Bước 4: Kiểm Tra Và Lưu Dữ Liệu
n8n lưu dữ liệu trong thư mục /path/to/n8n_data
. Bạn có thể kiểm tra dữ liệu bằng lệnh:
ls -la /path/to/n8n_data
Nếu muốn backup dữ liệu:
tar -czvf n8n-backup.tar.gz /path/to/n8n_data
Bước 5: Dừng Hoặc Khởi Động Lại n8n
- Dừng n8n:
docker-compose down
- Khởi động lại n8n:
docker-compose up -d
Kết Luận
Bằng cách sử dụng Docker Compose, bạn có thể dễ dàng cài đặt và quản lý n8n trên server của mình. Cấu hình này hỗ trợ HTTPS, webhook, và tăng giới hạn payload, giúp bạn xây dựng các workflows mạnh mẽ.