Thiết lập N8N tự lưu trữ: Hướng dẫn đầy đủ
N8N là gì?
N8N (phát âm là “N-Eight-N”) là một công cụ tự động hóa dòng công việc nguồn mở cho phép bạn kết nối các ứng dụng và dịch vụ khác nhau một cách liền mạch. Không giống như nhiều công cụ tự động hóa khác, N8N cung cấp mức độ linh hoạt cao trong việc tạo ra các quy trình công việc tùy chỉnh. Với N8N, bạn có thể tự động hóa các tác vụ lặp đi lặp lại, tích hợp API và quản lý dữ liệu giữa các ứng dụng thông qua lập trình trực quan.
Điều kiện tiên quyết
Trước khi bạn bắt đầu thiết lập phiên bản N8N tự lưu trữ của mình, hãy đảm bảo rằng bạn có những điều sau:
- Một máy chủ làm việc: Nó có thể là một VPS hoặc một máy chủ vật lý có quyền truy cập vào Internet.
- Hệ điều hành: N8N tương thích với nhiều hệ điều hành khác nhau như Ubuntu, Debian và Centos. Hướng dẫn này sẽ tập trung vào Ubuntu 20.04 để cài đặt.
- Docker: Hướng dẫn này sẽ sử dụng Docker để triển khai, vì vậy hãy đảm bảo bạn đã cài đặt Docker trên máy chủ của mình.
- Node.js: Phiên bản LTS mới nhất của Node.js là bắt buộc nếu bạn chọn chạy N8N mà không cần Docker.
- Tên miền hoặc địa chỉ IP: Để truy cập vào thể hiện N8N của bạn một cách dễ dàng.
- Kiến thức dòng lệnh cơ bản: Làm quen với các lệnh đầu cuối sẽ giảm bớt quá trình thiết lập.
Bước 1: Cài đặt Docker và Docker Compose
Đầu tiên, đảm bảo rằng hệ thống của bạn được cập nhật. Chạy lệnh sau:
sudo apt update && sudo apt upgrade -y
Để cài đặt Docker, hãy sử dụng các lệnh sau:
sudo apt install apt-transport-https ca-certificates curl software-properties-common -y
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
sudo apt update
sudo apt install docker-ce -y
Sau khi cài đặt Docker, bạn nên đảm bảo nó đang chạy:
sudo systemctl start docker
sudo systemctl enable docker
Tiếp theo, cài đặt Docker Compose, giúp xác định và chạy các ứng dụng Docker đa phụ thuộc. Để cài đặt Docker Compose, chạy:
sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
Xác minh việc cài đặt Docker Compose:
docker-compose --version
Bước 2: Tạo tệp cấu hình Compose Docker
Tạo một thư mục cho phiên bản N8N của bạn:
mkdir n8n
cd n8n
Bây giờ, tạo a docker-compose.yml
tài liệu:
nano docker-compose.yml
Dán cấu hình sau vào tệp. Thiết lập này bao gồm cơ sở dữ liệu liên tục và cấu hình SMTP tùy chọn cho thông báo email:
version: '3'
services:
n8n:
image: n8n:v0.198.0
restart: always
ports:
- "5678:5678"
environment:
- N8N_HOST=your.domain.com
- N8N_PORT=5678
- N8N_PROTOCOL=https
- NODE_ENV=production
- N8N_BASIC_AUTH_ACTIVE=true
- N8N_BASIC_AUTH_USER=username
- N8N_BASIC_AUTH_PASSWORD=password
- DB_TYPE=sqlite
- DB_SQLITE_DATABASE=/data/database.sqlite
- N8N_LOG_LEVEL=info
volumes:
- ./n8n_data:/data
Đảm bảo thay thế your.domain.com
Thì username
Và password
Với tên miền thực tế, tên người dùng và mật khẩu ưa thích của bạn. Bạn cũng có thể đặt một cơ sở dữ liệu khác nhau tùy thuộc vào yêu cầu của bạn.
Bước 3: Bắt đầu phiên bản N8N
Với docker-compose.yml
Tệp sẵn sàng, bây giờ bạn có thể bắt đầu N8N. Chạy:
docker-compose up -d
Lệnh này sẽ kéo hình ảnh N8N và chạy nó ở chế độ tách rời.
Bước 4: Định cấu hình HTTPS với Let’s Encrypt
Để bảo mật tốt hơn và để đảm bảo N8N hoạt động với HTTPS, điều cần thiết là phải định cấu hình chứng chỉ SSL/TLS. Đối với điều này, bạn có thể sử dụng Let’s Encrypt với Certbot.
Đầu tiên, cài đặt certbot:
sudo apt install certbot python3-certbot-nginx -y
Sau khi cài đặt, yêu cầu chứng chỉ SSL của bạn:
sudo certbot --nginx -d your.domain.com
Lệnh này sẽ tự động định cấu hình cài đặt NGINX của bạn để chuyển hướng lưu lượng HTTP sang HTTPS.
Bước 5: Định cấu hình Nginx như một proxy ngược
Nếu bạn đang sử dụng Nginx, hãy tạo tệp cấu hình cho dịch vụ N8N của mình:
sudo nano /etc/nginx/sites-available/n8n
Thêm cấu hình sau:
server {
listen 80;
server_name your.domain.com;
return 301 https://$host$request_uri;
}
server {
listen 443 ssl;
server_name your.domain.com;
ssl_certificate /etc/letsencrypt/live/your.domain.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/your.domain.com/privkey.pem;
location / {
proxy_pass https://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;
}
}
Thay thế your.domain.com
với tên miền thực tế của bạn.
Bật cấu hình trang web mới và khởi động lại nginx:
sudo ln -s /etc/nginx/sites-available/n8n /etc/nginx/sites-enabled/
sudo systemctl restart nginx
Bước 6: Truy cập phiên bản N8N của bạn
Để truy cập phiên bản N8N của bạn, hãy truy cập https://your.domain.com
trong trình duyệt web của bạn. Nếu bạn đã thiết lập mọi thứ một cách chính xác, bạn sẽ được nhắc về thông tin xác thực cơ bản mà bạn đã xác định trước đó.
Bước 7: Định cấu hình webhooks
N8N cho phép bạn thiết lập webhooks dễ dàng. Sau khi đăng nhập, điều hướng đến khu vực quy trình làm việc và tạo một quy trình làm việc mới. Thêm nút “Webhook” và định cấu hình nó dựa trên phương thức HTTP (GET, POST, v.v.) và điểm cuối.
Sau khi được cấu hình, N8N sẽ cung cấp cho bạn một URL duy nhất mà bạn có thể sử dụng để kích hoạt quy trình công việc này bên ngoài thông qua các yêu cầu HTTP.
Bước 8: Khám phá các nút N8N
N8N đi kèm với một thư viện các nút tích hợp phong phú để kết nối với các ứng dụng khác nhau như Slack, Google Sheets và Trello. Để khám phá các nút:
- Nhấp vào trên các nút của các nút trên thanh bên trái.
- Duyệt qua các danh mục, đọc mô tả và thêm các nút phù hợp với quy trình công việc của bạn.
Để tạo một quy trình công việc, bạn có thể bắt đầu với một nút kích hoạt (như HTTP hoặc Cron) và liên kết nó với các nút tiếp theo cần thiết để xử lý dữ liệu.
Bước 9: Lập lịch trình công việc
Đối với các quy trình công việc cần chạy định kỳ, N8N cung cấp một nút “cron” cho phép bạn xác định lịch trình. Ví dụ, nó cho phép các quy trình công việc chạy hàng ngày, hàng giờ hoặc bất cứ lúc nào bạn chỉ định.
- Thêm một nút “Cron” vào quy trình làm việc của bạn.
- Đặt lịch trình theo nhu cầu của bạn.
- Kết nối nó với các nút cần thực thi dựa trên lịch trình cron.
Bước 10: Sao lưu và Khôi phục
Các bản sao lưu thường xuyên là rất cần thiết, đặc biệt là trong môi trường sản xuất. Bạn có thể sao lưu cơ sở dữ liệu của N8N bằng cách sao chép /data
thư mục bạn gắn trong docker-compose.yml
tài liệu.
Để sao lưu:
docker cp n8n_n8n_1:/data ./backup_data
Để khôi phục, bạn có thể sao chép lại dữ liệu sao lưu của mình vào container:
docker cp ./backup_data n8n_n8n_1:/data
Bước 11: Cập nhật N8N
Cập nhật thể hiện N8N tự lưu trữ của bạn có thể được thực hiện bằng cách kéo hình ảnh Docker mới nhất. Đảm bảo kiểm tra Ghi chú phát hành chính thức của N8N Để phá vỡ các thay đổi trước khi cập nhật.
Để cập nhật, hãy chạy các lệnh sau:
docker-compose pull
docker-compose up -d
Bước 12: Thực hành tốt nhất bảo mật
Để tăng cường bảo mật N8N của bạn:
- Sử dụng https: Đảm bảo SSL được cấu hình với mã hóa Let.
- Xác thực: Sử dụng mật khẩu mạnh cho cơ bản Auth và xem xét sử dụng OAuth để tích hợp yêu cầu bảo mật cao hơn.
- Tường lửa: Định cấu hình các quy tắc tường lửa để giới hạn quyền truy cập vào máy chủ của bạn, chỉ cho phép IPS cụ thể nếu cần thiết.
- Cập nhật thường xuyên: Giữ N8N và các phụ thuộc của nó được cập nhật để tránh các lỗ hổng.
Bước 13: Tích hợp với các dịch vụ khác
N8N được thiết kế để tích hợp dễ dàng với một loạt các ứng dụng. Nền tảng hỗ trợ API RESTFUL, có nghĩa là bạn có thể kết nối hầu hết mọi dịch vụ trực tuyến. Ngoài các nút tích hợp, bạn có thể tạo các nút yêu cầu HTTP để kết nối thủ công API bên ngoài, cho phép kiểm soát hoàn toàn quá trình tích hợp.
Bước 14: Giám sát N8N
Giám sát N8N có thể được thực hiện bằng cách sử dụng các dịch vụ của bên thứ ba như Prometheus và Grafana. Đối với các số liệu hiệu suất chuyên sâu, hãy thiết lập ghi nhật ký trong N8N và sử dụng các khả năng đăng nhập tích hợp của Docker. Giám sát là rất quan trọng để đảm bảo quy trình công việc của bạn đang chạy trơn tru và để cảnh báo bạn về bất kỳ vấn đề tiềm năng nào.
Hướng dẫn này cung cấp một cái nhìn toàn diện về việc thiết lập một thể hiện N8N tự lưu trữ, bao gồm mọi thứ từ cài đặt đến cấu hình nâng cao. Bằng cách làm theo các bước được phác thảo, bạn có thể tạo các quy trình công việc tự động mạnh mẽ phù hợp với nhu cầu của bạn. Thưởng thức khám phá sức mạnh của tự động hóa với N8N!