Hướng Dẫn Cài Đặt n8n
1. Yêu cầu tiền đề
Máy chủ: Ubuntu 22.04 / Debian 11 / CentOS 8+
Tối thiểu: 2 vCPU, 2 GB RAM, 20 GB ổ NVMe
Quyền root hoặc user có quyền sudo
Docker & Docker Compose: Docker CE ≥ 20.10, Docker Compose ≥ 1.29
2. Cài đặt Docker & Docker Compose
Cập nhật hệ thống:
sudo apt update && sudo apt upgrade -y
Cài Docker CE:
sudo apt install -y \
ca-certificates \
curl \
gnupg \
lsb-release
curl -fsSL https://download.docker.com/linux/ubuntu/gpg \
| sudo gpg –dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
echo \
“deb [arch=$(dpkg –print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] \
https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) stable” \
| sudo tee /etc/apt/sources.list.d/docker.list >/dev/null
sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io
Cài Docker Compose:
sudo curl -L “https://github.com/docker/compose/releases/download/v2.14.2/docker-compose-$(uname -s)-$(uname -m)” \
-o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
Kiểm tra:
docker –version
docker-compose –version
3. Tạo thư mục & file cấu hình
Tạo thư mục và file docker-compose.yml:
sudo mkdir -p /opt/n8n
cd /opt/n8n
sudo tee docker-compose.yml > /dev/null << ‘EOF’
version: ‘3.7’
services:
n8n:
image: n8nio/n8n:latest
restart: always
ports:
– “5678:5678”
environment:
– N8N_HOST=your.domain.com
– N8N_PORT=5678
– N8N_PROTOCOL=https
– VUE_APP_URL_BASE_API=https://your.domain.com
– N8N_BASIC_AUTH_ACTIVE=true
– N8N_BASIC_AUTH_USER=admin
– N8N_BASIC_AUTH_PASSWORD=StrongPassword123!
– NODE_ENV=production
– DB_SQLITE_VACUUM_ON_STARTUP=true
– DB_TYPE=sqlite
– DB_SQLITE_DATABASE=/home/node/.n8n/database.sqlite
volumes:
– ~/.n8n:/home/node/.n8n
EOF
4. Khởi động dịch vụ
Khởi động container:
sudo docker-compose up -d
Kiểm tra trạng thái:
sudo docker-compose ps
5. Cài đặt SSL với Let’s Encrypt (Qua Nginx Proxy)
Cài Nginx & Certbot:
sudo apt install -y nginx certbot python3-certbot-nginx
Tạo file config Nginx:
sudo tee /etc/nginx/sites-available/n8n.conf > /dev/null << ‘EOF’
server {
listen 80;
server_name your.domain.com;
location / {
proxy_pass http://localhost: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;
}
}
EOF
sudo ln -s /etc/nginx/sites-available/n8n.conf /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl reload nginx
Lấy chứng chỉ SSL:
sudo certbot –nginx -d your.domain.com –non-interactive –agree-tos -m you@domain.com
6. Kiểm thử và bảo trì
Truy cập: https://your.domain.com và đăng nhập Basic Auth.
Sao lưu thư mục ~/.n8n định kỳ.
Cập nhật phiên bản n8n:
cd /opt/n8n
sudo docker-compose pull n8n
sudo docker-compose up -d