Back to articles
Technology Insight

Triển khai NocoDB trên VPS: Biến cơ sở dữ liệu có sẵn thành bảng Smart Spreadsheet tương tự Airtable

June 2, 2026

Giới thiệu xu hướng No-Code và bài toán tối ưu dữ liệu doanh nghiệp

Trong kỷ nguyên chuyển đổi số, việc quản trị và khai thác dữ liệu một cách hiệu quả là yếu tố sống còn đối với sự phát triển của doanh nghiệp. Các công ty thường sở hữu những hệ thống cơ sở dữ liệu quan hệ mạnh mẽ như MySQL, PostgreSQL hay SQL Server. Tuy nhiên, việc truy xuất và thao tác trên các cơ sở dữ liệu này thường đòi hỏi kỹ năng lập trình hoặc sử dụng các câu lệnh SQL phức tạp, tạo ra một rào cản lớn đối với bộ phận kinh doanh, marketing hay nhân sự.

Sự bùng nổ của các nền tảng No-Code Smart Spreadsheet như Airtable đã thay đổi hoàn toàn cách chúng ta tương tác với dữ liệu. Nhưng Airtable lại đi kèm với những hạn chế lớn về chi phí (tính theo user), giới hạn số dòng dữ liệu và đặc biệt là lo ngại về bảo mật khi toàn bộ thông tin nhạy cảm của doanh nghiệp phải lưu trữ trên đám mây của bên thứ ba. Đây chính là lý do NocoDB ra đời như một giải pháp thay thế mã nguồn mở hoàn hảo.

Bài viết này sẽ hướng dẫn bạn cách triển khai NocoDB trên máy chủ ảo riêng (VPS) để biến các cơ sở dữ liệu sẵn có của bạn thành giao diện bảng thông minh, trực quan mà vẫn đảm bảo toàn quyền kiểm soát dữ liệu.

NocoDB là gì? Tại sao nên chọn NocoDB thay vì Airtable?

NocoDB là một nền tảng No-Code mã nguồn mở (Open-source) cho phép kết nối trực tiếp với các cơ sở dữ liệu quan hệ hiện có và hiển thị chúng dưới dạng giao diện bảng thông minh (Smart Spreadsheet). Thay vì thay thế cơ sở dữ liệu của bạn, NocoDB hoạt động như một lớp giao diện (UI layer) phía trên, giúp người dùng không có chuyên môn kỹ thuật vẫn có thể dễ dàng thêm, sửa, xóa và tìm kiếm dữ liệu.

Những ưu điểm vượt trội khi tự triển khai NocoDB trên VPS:

  • Bảo mật và toàn quyền kiểm soát dữ liệu: Dữ liệu hoàn toàn nằm trên hạ tầng VPS của bạn, đáp ứng các tiêu chuẩn bảo mật khắt khe và các quy định pháp lý về lưu trữ dữ liệu nội bộ.
  • Không giới hạn dòng và người dùng: Khác với các mô hình SaaS tính phí dựa trên số lượng user và số dòng (records), NocoDB trên VPS riêng chỉ bị giới hạn bởi cấu hình phần cứng của bạn.
  • Kết nối cơ sở dữ liệu có sẵn: NocoDB không ép bạn phải tạo một cơ sở dữ liệu mới. Bạn chỉ cần kết nối nó với database hiện tại (PostgreSQL, MySQL, SQLite, v.v.), mọi cấu trúc bảng và dữ liệu sẽ lập tức được đồng bộ.
  • Khả năng mở rộng mạnh mẽ: Hỗ trợ tạo các góc nhìn dữ liệu khác nhau (Grid view, Form view, Gallery view, Kanban), thiết lập phân quyền chi tiết (RBAC) và tích hợp tự động hóa qua Webhooks, Make, hoặc Zapier.
NocoDB không chỉ là một công cụ quản lý dữ liệu, nó là cầu nối rút ngắn khoảng cách giữa kỹ thuật và vận hành doanh nghiệp.

Chuẩn bị trước khi triển khai NocoDB trên VPS

Để quá trình cài đặt diễn ra mượt mà, bạn cần chuẩn bị một số yếu tố hạ tầng cơ bản sau:

  1. Một máy chủ ảo (VPS): Cấu hình tối thiểu khuyến nghị là 1 vCPU, 2GB RAM và hệ điều hành Ubuntu Server (20.04 hoặc 22.04 LTS). Bạn có thể thuê VPS từ các nhà cung cấp như DigitalOcean, Linode, Vultr hoặc các nhà cung cấp uy tín tại Việt Nam.
  2. Tên miền (Domain/Subdomain): Một tên miền đã được trỏ bản ghi A về địa chỉ IP của VPS (ví dụ: nocodb.tencongty.com).
  3. Công cụ kết nối: Terminal (trên macOS/Linux) hoặc PuTTY/MobaXterm (trên Windows) để truy cập SSH vào VPS.
  4. Cơ sở dữ liệu đích: Thông tin kết nối (Host, Port, User, Password, Database Name) của cơ sở dữ liệu bạn muốn biến thành bảng thông minh.

Hướng dẫn chi tiết các bước cài đặt NocoDB bằng Docker Compose

Sử dụng Docker và Docker Compose là phương pháp tối ưu nhất để triển khai NocoDB. Phương pháp này giúp cô lập môi trường ứng dụng, dễ dàng cập nhật và quản lý trong tương lai.

Bước 1: Cập nhật hệ thống và cài đặt Docker

Đầu tiên, hãy kết nối SSH vào VPS của bạn với quyền root hoặc người dùng có quyền sudo. Tiến hành cập nhật danh sách gói và cài đặt Docker:

sudo apt update && sudo apt upgrade -y
sudo apt install docker.io docker-compose -y
sudo systemctl enable docker
sudo systemctl start docker

Bước 2: Tạo thư mục dự án và file cấu hình

Tạo một thư mục riêng để lưu trữ cấu hình của NocoDB và di chuyển vào thư mục đó:

mkdir ~/nocodb && cd ~/nocodb

Tiếp theo, tạo file docker-compose.yml bằng trình soạn thảo mã nguồn nano:

nano docker-compose.yml

Sao chép và dán đoạn mã cấu hình dưới đây vào file. Trong cấu hình này, chúng ta sẽ sử dụng PostgreSQL làm cơ sở dữ liệu nội bộ để NocoDB lưu trữ thông tin cấu hình hệ thống và người dùng:

version: '3' 

services: 
  nocodb-db: 
    image: postgres:14-alpine 
    environment: 
      POSTGRES_DB: nocodb_meta 
      POSTGRES_USER: noco_admin 
      POSTGRES_PASSWORD: StrongMetaPassword123 
    volumes: 
      - nocodb_db_data:/var/lib/postgresql/data 
    restart: always 

  nocodb: 
    depends_on: 
      - nocodb-db 
    image: nocodb/nocodb:latest 
    environment: 
      NC_DB: "pg://nocodb-db:5432?u=noco_admin&p=StrongMetaPassword123&d=nocodb_meta" 
    ports: 
      - "8080:8080" 
    volumes: 
      - nocodb_data:/usr/app/data 
    restart: always 

volumes: 
  nocodb_db_data: 
  nocodb_data:

Lưu ý: Hãy thay đổi StrongMetaPassword123 bằng một mật khẩu mạnh của riêng bạn để đảm bảo an toàn. Sau đó nhấn Ctrl + O, Enter để lưu và Ctrl + X để thoát.

Bước 3: Khởi chạy NocoDB

Kích hoạt container bằng lệnh sau:

docker-compose up -d

Quá trình tải image và khởi tạo sẽ mất vài phút. Bạn có thể kiểm tra trạng thái hoạt động bằng lệnh docker ps. Nếu container hiển thị trạng thái Up, NocoDB đã được khởi chạy thành công trên cổng 8080.

Cấu hình Reverse Proxy với Nginx và cài đặt SSL

Để truy cập NocoDB thông qua tên miền một cách an toàn bảo mật (HTTPS) thay vì sử dụng IP và cổng 8080, chúng ta cần thiết lập Nginx làm Reverse Proxy.

Bước 1: Cài đặt Nginx và Certbot

sudo apt install nginx certbot python3-certbot-nginx -y

Bước 2: Tạo file cấu hình Nginx cho tên miền

sudo nano /etc/nginx/sites-available/nocodb

Nhập nội dung cấu hình sau (thay thế nocodb.tencongty.com bằng tên miền thực tế của bạn):

server { 
    listen 80; 
    server_name nocodb.tencongty.com; 

    location / { 
        proxy_pass http://localhost:8080; 
        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; 
    } 
}

Kích hoạt cấu hình và khởi động lại Nginx:

sudo ln -s /etc/nginx/sites-available/nocodb /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl restart nginx

Bước 3: Cài đặt chứng chỉ SSL Let's Encrypt miễn phí

Chạy lệnh Certbot để tự động cấu hình chứng chỉ SSL bảo mật HTTPS:

sudo certbot --nginx -d nocodb.tencongty.com

Làm theo hướng dẫn trên màn hình để hoàn tất. Giờ đây, hệ thống NocoDB của bạn đã được bảo vệ bởi giao thức mã hóa HTTPS an toàn.

Kết nối cơ sở dữ liệu có sẵn và trải nghiệm giao diện Smart Spreadsheet

Mở trình duyệt web và truy cập vào tên miền của bạn (ví dụ: [https://nocodb.tencongty.com](https://nocodb.tencongty.com)). Trong lần truy cập đầu tiên, hệ thống sẽ yêu cầu bạn tạo tài khoản Quản trị viên tối cao (Super Admin).

Sau khi đăng nhập thành công vào bảng điều khiển (Dashboard), bạn có thể bắt đầu biến cơ sở dữ liệu có sẵn thành Airtable theo các bước sau:

  1. Tạo một Project mới: Chọn "Create New Project", đặt tên cho dự án của bạn.
  2. Kết nối Database ngoại vi: Thay vì chọn "nội bộ", hãy chọn kết nối tới một cơ sở dữ liệu bên ngoài ("Connect to external database").
  3. Nhập thông tin kết nối: Lựa chọn loại cơ sở dữ liệu (MySQL, PostgreSQL, v.v.) và điền các thông số kết nối của hệ thống sẵn có.
  4. Khám phá dữ liệu: Ngay lập tức, NocoDB sẽ quét toàn bộ các bảng, các mối quan hệ (Relations) và hiển thị chúng dưới dạng một bảng tính trực quan.

Tại giao diện này, các thành viên trong nhóm của bạn có thể sử dụng các tính năng nâng cao như:

  • Thay đổi kiểu hiển thị linh hoạt (Grid, Form để thu thập thông tin, Kanban để quản lý tiến độ công việc).
  • Sử dụng bộ lọc (Filter), sắp xếp (Sort) và nhóm dữ liệu (Group) chỉ với vài cú nhấp chuột.
  • Thêm các cột ảo (Formula, Rollup, Lookup) để tính toán dữ liệu tương tự như Excel hay Airtable mà không ảnh hưởng đến cấu trúc bảng SQL gốc.

Kết luận và các khuyến nghị vận hành

Triển khai NocoDB trên VPS là một giải pháp chiến lược giúp doanh nghiệp vừa tối ưu hóa được nguồn lực kỹ thuật sẵn có, vừa trao quyền cho người dùng nghiệp vụ (Non-tech users) xử lý dữ liệu linh hoạt, đồng thời tiết kiệm hàng ngàn USD chi phí bản quyền SaaS hàng năm. Hệ thống tự lưu trữ (Self-hosted) này mang lại sự độc lập hoàn toàn về mặt công nghệ cho doanh nghiệp.

Để đảm bảo hệ thống vận hành ổn định lâu dài, bạn cần lưu ý thực hiện việc back-up định kỳ cả cơ sở dữ liệu cấu hình của NocoDB lẫn cơ sở dữ liệu đích, đồng thời thường xuyên cập nhật Docker image của NocoDB để nhận các bản vá bảo mật và tính năng mới nhất từ cộng đồng mã nguồn mở.

Triển khai NocoDB trên VPS: Biến cơ sở dữ liệu có sẵn thành bảng Smart Spreadsheet tương tự Airtable | DPTCloud