Chỉ Dẫn Chuyển Đổi Supabase Tự Host Đến VPS Mới & Bảo Mật 2026

Việc vận hành Supabase Self-Hosted giúp bạn kiểm soát tuyệt đối dữ liệu và chi phí.

Đôi khi, VPS hiện tại có thể quá tải, hoặc bạn tìm thấy nhà cung cấp VPS tốt hơn với giá rẻ hơn. Khi ấy, bạn cần di dời hệ thống đến VPS mới.

Nhiều người e ngại việc chuyển đổi sẽ phức tạp, dễ mất dữ liệu hoặc hỏng thiết lập. Nhất là khi có dữ liệu users lớn, Database và Storage đáng kể, và downtime dài.

Đừng lo! Bài viết này là chỉ dẫn chi tiết từng bước chuyển Supabase Docker từ server cũ đến server mới an toàn nhất. Chúng ta dùng chuyển trực tiếp VPS-to-VPS siêu nhanh, và NPM để bảo mật dashboard.

Bước 1: Hiểu rõ trái tim Supabase Self-Hosted.

Trước khi làm, cần hiểu cấu trúc file trong /opt/supabase. Nhiều folder nhưng docker mới quan trọng.

99% dữ liệu quan trọng nằm trong folder docker. Các folder khác không cần copy vì Docker dùng image đã build.

Ba yếu tố bất khả xâm phạm: docker-compose.yml (thiết kế hệ thống), .env (bí mật hệ thống), volumes/db/data (dữ liệu sống database).

Bước 2: Chuẩn bị VPS fresh VPS.

Nên dùng Ubuntu 20.04 LTS. SSH vào VPS mới:

sudo apt update && sudo apt upgrade -y
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
sudo docker --version
sudo docker compose version

Bước 3: Chuyển dữ liệu bằng Rsync trực tiếp VPS-to-VPS.

Rsync tốt hơn SCP: tiếp tục nếu đứt, preserved attributes, -z flag tiết kiệm băng thông.

Trên VPS mới: mkdir -p /opt/supabase
Trên VPS cũ: rsync -avzP /opt/supabase/docker/ root@IP_VPS_MOI:/opt/supabase/docker/
Dấu / cuối rất quan trọng!

Bước 4: Khởi chạy Supabase trên VPS mới.

cd /opt/supabase/docker
cat .env kiểm tra
docker compose up -d
docker compose logs -f

Bước 5: Setup NPM & SSL.

Tạo riêng API và Studio:

1. API Gateway: Domain spb.dpsmedia.vn, Forward 172.17.0.1:8008, Websockets BẮT BUỘC, Let's Encrypt SSL.
2. Studio: Domain studio.dpsmedia.vn, Forward 172.17.0.1:3003, Websockets bật, SSL tương tự.
Trỏ DNS sub-domain về IP VPS mới.

Bước 6: Security nâng cao với Access Lists.

Studio không có login: Dùng Access Lists NPM.

Add Admin-Only: Username/Password, cho phép IP tĩnh + Satisfy Any. Apply cho Proxy Host Studio.

Di dời Supabase không khó khăn nếu hiểu Docker. Backup định kỳ để đề phòng!

Chúc thành công!