Hướng Dẫn Tự Host Supabase trên Ubuntu
Chào mừng bạn đến với bảng điều khiển tương tác để tự host Supabase. Báo cáo này đã được chuyển đổi thành một công cụ để giúp bạn hiểu và triển khai Supabase một cách hiệu quả. Lựa chọn được khuyến nghị và tối ưu nhất cho hầu hết các trường hợp trên Ubuntu là sử dụng Docker Compose.
Tại Sao Chọn Docker Compose?
- ✓Dễ dàng & Nhanh chóng: Được Supabase hỗ trợ chính thức, cho phép thiết lập và chạy chỉ trong vài phút.
- ✓Ổn định & Cô lập: Đóng gói từng dịch vụ Supabase vào container, tránh xung đột và đảm bảo môi trường nhất quán.
- ✓Quản lý Đơn giản: Sử dụng tệp `docker-compose.yml` để định nghĩa, khởi động và cập nhật toàn bộ hệ thống một cách trực quan.
- ✓Phù hợp với Ubuntu: Cân bằng hoàn hảo giữa tính dễ sử dụng và khả năng kiểm soát cho một máy chủ Ubuntu đơn lẻ.
Lợi Ích Của Việc Tự Host
- ✓Kiểm soát hoàn toàn: Toàn quyền tùy chỉnh cấu hình, quản lý dữ liệu và tuân thủ các quy định bảo mật riêng.
- ✓Tiết kiệm chi phí: Có thể kinh tế hơn ở quy mô lớn nếu bạn đã có sẵn hạ tầng.
- ✓Tùy chỉnh & Mở rộng: Linh hoạt điều chỉnh từng thành phần và tài nguyên theo nhu cầu dự án.
- ✓Tránh Vendor Lock-in: Giảm sự phụ thuộc vào một nhà cung cấp dịch vụ đám mây duy nhất.
So Sánh Các Phương Pháp Tự Host
Docker Compose là lựa chọn tối ưu cho Ubuntu, nhưng việc hiểu các phương pháp khác sẽ giúp bạn thấy rõ sự cân bằng giữa tính đơn giản và khả năng mở rộng. Biểu đồ dưới đây trực quan hóa sự khác biệt này.
Di chuột qua các cột để xem chi tiết. "Dễ sử dụng" càng cao càng tốt, "Độ phức tạp" càng thấp càng tốt.
Hướng Dẫn Cài Đặt Từng Bước
Thực hiện theo quy trình tương tác dưới đây để cài đặt Supabase bằng Docker Compose. Nhấp vào từng bước để xem chi tiết và các lệnh cần thiết.
Trung Tâm Bảo Mật Thiết Yếu
Bảo mật là một quá trình liên tục và tối quan trọng. Sau khi cài đặt, hãy hoàn thành danh sách kiểm tra dưới đây. Nhấp vào mỗi mục để xem hướng dẫn chi tiết.
Cảnh báo Quan trọng
Không bao giờ triển khai môi trường sản xuất với thông tin đăng nhập và khóa API mặc định. Việc này sẽ khiến hệ thống của bạn cực kỳ dễ bị tấn công.
Tự Host Supabase trên Ubuntu: Con Đường Tối Ưu
Biến báo cáo kỹ thuật thành một lộ trình trực quan. Khám phá tại sao Docker Compose là lựa chọn chiến lược và cách triển khai một cách an toàn.
Supabase Là Gì?
Một nền tảng mã nguồn mở thay thế Firebase, cung cấp một bộ công cụ backend toàn diện được xây dựng trên các công nghệ cấp doanh nghiệp.
PostgreSQL
Trái tim CSDL
PostgREST
API RESTful tự động
Realtime
Lắng nghe thay đổi
Auth
Xác thực người dùng
Storage
Lưu trữ file S3
Kong
API Gateway
Tại Sao Chọn Docker Compose?
Trong hệ sinh thái các phương pháp tự host, Docker Compose nổi bật là lựa chọn cân bằng nhất cho Ubuntu, cung cấp sự đơn giản mà không hy sinh quá nhiều khả năng kiểm soát.
Biểu đồ so sánh mức độ Dễ Sử Dụng và Độ Phức Tạp giữa các phương pháp. Điểm càng cao càng tốt cho Dễ Sử Dụng, càng thấp càng tốt cho Độ Phức Tạp.
Lộ Trình Cài Đặt
1. Chuẩn Bị Môi Trường
Cập nhật Ubuntu và cài đặt Docker & Docker Compose. Đây là nền tảng vững chắc cho toàn bộ hệ thống.
2. Cấu Hình Supabase
Tải mã nguồn Supabase và quan trọng nhất, thiết lập tệp `.env` với các khóa bí mật và mật khẩu an toàn.
3. Khởi Động Dịch Vụ
Chạy lệnh `docker compose up -d` để khởi động toàn bộ các thành phần của Supabase trong chế độ nền.
4. Truy Cập và Kiểm Tra
Mở trình duyệt và truy cập Supabase Studio tại `http://
Danh Sách Kiểm Tra Bảo Mật Thiết Yếu
Một hệ thống Supabase được cài đặt mặc định là KHÔNG AN TOÀN. Hoàn thành các bước sau là yêu cầu bắt buộc, không phải tùy chọn.
Thay đổi Mật khẩu Mặc định
Thay đổi ngay `POSTGRES_PASSWORD`, `DASHBOARD_USERNAME` và `DASHBOARD_PASSWORD` trong tệp `.env`.
Tạo JWT_SECRET Mạnh
`JWT_SECRET` là gốc của hệ thống xác thực. Tạo một chuỗi ngẫu nhiên, mạnh (40+ ký tự) và giữ bí mật tuyệt đối.
Bảo Vệ API Gateway (Kong)
Không để Kong tiếp xúc trực tiếp với Internet. Sử dụng một reverse proxy như Nginx để quản lý truy cập và thêm lớp bảo vệ SSL.
Bảo Mật Supabase Studio
Định tuyến Dashboard qua một proxy riêng và áp dụng các lớp xác thực bổ sung (ví dụ: Basic Auth, Authelia) để ngăn chặn truy cập trái phép.