Hướng Dẫn Triển Khai n8n Tự Host Trên Ubuntu 24.04 🚀
Gần đây, mình muốn thử nghiệm tự động hóa các nhiệm vụ trên nhiều ứng dụng mà không cần phụ thuộc vào các nền tảng bên thứ ba. Đó là lúc mình phát hiện ra n8n — một công cụ tự động hóa quy trình làm việc mã nguồn mở. Trong bài viết này, mình sẽ hướng dẫn bạn cách thiết lập n8n từ đầu trên máy chủ Ubuntu 24.04 bằng Docker.
Bài hướng dẫn này giả định rằng bạn bắt đầu với một máy chủ mới.
✅ Những Gì Bạn Cần Có
- Một VPS đám mây hoặc máy chủ với Ubuntu 24.04 đã được cài đặt
- Quyền truy cập SSH vào máy chủ
- Kiến thức cơ bản về Linux (mặc dù mình sẽ hướng dẫn bạn từng bước)
- Tên miền (không bắt buộc, nhưng khuyến nghị cho các thiết lập sản xuất)
Bước 1 — Kết Nối Tới Máy Chủ Của Bạn
Nếu bạn chưa có máy chủ, bạn có thể tạo một cái bằng cách sử dụng các nhà cung cấp như DigitalOcean, AWS Lightsail hoặc Vultr. Sau đó, bạn có thể kết nối bằng SSH như sau:
ssh username@your-server-ip
Khi đã kết nối, bạn đã sẵn sàng để bắt đầu!
Bước 2 — Cập Nhật Các Gói Trên Máy Chủ
Việc cập nhật máy chủ trước khi cài đặt bất kỳ thứ gì là một thói quen tốt.
sudo apt update && sudo apt upgrade -y
Lệnh này sẽ cập nhật danh sách gói và cài đặt các phiên bản mới nhất.
Bước 3 — Cài Đặt Docker
n8n hoạt động tốt nhất với Docker, vì vậy hãy cài đặt Docker trước.
Cài Đặt Docker Engine
sudo apt install docker.io -y
Kích hoạt và khởi động Docker:
sudo systemctl enable docker
sudo systemctl start docker
Xác minh Docker đã được cài đặt:
docker --version
Bạn sẽ thấy một thông báo như Docker version 20.xx.x.
Cho Phép Docker Không Cần sudo (Tùy Chọn)
Nếu bạn không muốn gõ sudo mỗi lần, bạn có thể thêm người dùng của mình vào nhóm Docker:
sudo usermod -aG docker $USER
Sau đó, đăng xuất và đăng nhập lại để áp dụng thay đổi.
Bước 4 — Cài Đặt Docker Compose
Docker Compose giúp dễ dàng định nghĩa và chạy các ứng dụng Docker đa container.
sudo apt install docker-compose -y
Kiểm tra phiên bản:
docker-compose --version
Bước 5 — Thiết Lập n8n Với Docker Compose
Tạo Thư Mục Cho n8n
mkdir ~/n8n
cd ~/n8n
Tạo File docker-compose.yml
Bạn có thể tạo và chỉnh sửa file bằng nano hoặc bất kỳ trình soạn thảo văn bản nào:
nano docker-compose.yml
Sau đó, dán nội dung sau vào:
version: "3"
services:
n8n:
image: n8nio/n8n
restart: always
ports:
- "5678:5678"
environment:
- N8N_BASIC_AUTH_ACTIVE=true
- N8N_BASIC_AUTH_USER=admin
- N8N_BASIC_AUTH_PASSWORD=yourpassword
- N8N_HOST=your-server-ip
- WEBHOOK_URL=http://your-server-ip:5678/
- GENERIC_TIMEZONE=Asia/Ho_Chi_Minh
volumes:
- ~/.n8n:/home/node/.n8n
✅ Quan Trọng:
- Thay thế
yourpasswordbằng một mật khẩu mạnh - Thay thế
your-server-ipbằng địa chỉ IP công cộng của máy chủ của bạn
Lưu file và thoát (Ctrl + X, Y, Enter).
Bước 6 — Khởi Động n8n
Chạy lệnh sau để khởi động container:
docker-compose up -d
Lệnh này sẽ tải hình ảnh cần thiết và khởi động container ở chế độ tách rời.
Kiểm tra xem nó có đang chạy không:
docker ps
Bạn sẽ thấy container n8n trong danh sách.
Bước 7 — Truy Cập n8n Trong Trình Duyệt
Mở trình duyệt của bạn và điều hướng đến:
http://your-server-ip:5678
Bạn sẽ thấy trang đăng nhập n8n. Sử dụng:
- Tên người dùng:
admin - Mật khẩu: mật khẩu bạn đã thiết lập trong file
docker-compose.yml
Bước 8 — Bắt Đầu Tự Động Hóa!
Bây giờ bạn có thể tạo các quy trình làm việc kết nối nhiều ứng dụng và dịch vụ mà không cần viết quá nhiều mã. Đây là một công cụ tuyệt vời cho việc thử nghiệm, các dự án cá nhân hoặc thậm chí tự động hóa nhẹ cho doanh nghiệp của bạn.
Bonus — Các Bước Tiếp Theo
Dưới đây là một số điều bạn có thể xem xét tiếp theo:
✔ Thiết lập Nginx như một proxy ngược
✔ Bảo mật phiên bản của bạn với chứng chỉ SSL thông qua Let’s Encrypt
✔ Tự động sao lưu các quy trình làm việc của bạn
✔ Khám phá các quy trình làm việc nâng cao kết nối APIs, nền tảng nhắn tin hoặc cơ sở dữ liệu
Kết Luận
Việc thiết lập n8n từ đầu trên Ubuntu 24.04 thật suôn sẻ và cực kỳ bổ ích. Nó mạnh mẽ, linh hoạt và giúp tự động hóa các nhiệm vụ một cách dễ dàng. Nếu bạn đang khám phá các công cụ tự động hóa, mình rất khuyến nghị bạn thử n8n.
Mình thực sự đã học cách thiết lập điều này bằng cách theo dõi tài liệu trên docs.vultr.com
— cảm ơn họ rất nhiều vì đã làm cho quy trình này dễ hiểu!
Hãy chia sẻ quy trình làm việc của bạn hoặc hỏi nếu bạn muốn nhận mẹo về việc bảo mật hoặc mở rộng phiên bản của mình nhé!
Chúc bạn tự động hóa vui vẻ! 🚀