Quay lại danh sách
Tin tức công nghệ

Hướng dẫn Tự Host Excalidraw trên Docker VPS: Giải Pháp Vẽ Sơ Đồ Tư Duy Và Cộng Tác Bảo Mật Cho Doanh Nghiệp

4 tháng 6, 2026

Giới thiệu về Excalidraw và Xu hướng Self-hosting trong Doanh nghiệp

Trong kỷ nguyên số hóa và làm việc từ xa, việc truyền tải ý tưởng một cách trực quan đóng vai trò then chốt vào sự thành công của mỗi dự án. Excalidraw đã nổi lên như một trong những công cụ bảng trắng kỹ thuật số (whiteboard) và vẽ sơ đồ tư duy trực tuyến được ưa chuộng nhất hiện nay nhờ giao diện tối giản, hiệu ứng vẽ tay (hand-drawn) thân thiện và khả năng phản hồi mượt mà theo thời gian thực.

Tuy nhiên, đối với các doanh nghiệp, tổ chức tài chính hoặc các dự án phát triển phần mềm có tính bảo mật cao, việc sử dụng phiên bản Cloud công cộng luôn đi kèm với những rủi ro tiềm ẩn về an toàn thông tin và quyền riêng tư dữ liệu. Chính vì vậy, xu hướng self-hosting (tự host phần mềm trên hạ tầng riêng) đang trở thành lựa chọn chiến lược. Việc triển khai Excalidraw trên hệ thống Docker VPS nội bộ không chỉ giúp doanh nghiệp kiểm soát toàn diện luồng dữ liệu mà còn tối ưu hóa chi phí vận hành lâu dài.

---

Tại sao Doanh nghiệp nên Tự Host Excalidraw trên Docker VPS?

Việc dịch chuyển từ giải pháp đám mây công cộng sang hạ tầng nội bộ mang lại nhiều lợi ích thiết thực, đặc biệt là đối với môi trường doanh nghiệp đòi hỏi tính tuân thủ cao:

  • Bảo mật và Quyền riêng tư Tuyệt đối: Mọi sơ đồ chiến lược, kiến trúc hệ thống và quy trình vận hành nội bộ của doanh nghiệp sẽ được lưu trữ cục bộ, tránh nguy cơ rò rỉ thông tin ra bên ngoài.
  • Toàn quyền Kiểm soát Hạ tầng: Bạn có thể dễ dàng cấu hình dung lượng, sao lưu dữ liệu (backup) định kỳ và tích hợp sâu vào hệ thống phân quyền hiện tại của công ty.
  • Tối ưu hóa Hiệu suất và Băng thông: Khi được triển khai trên VPS nội bộ hoặc Server LAN, tốc độ phản hồi và đồng bộ hóa giữa các thành viên trong cùng mạng sẽ đạt mức tối đa, giảm thiểu độ trễ mạng Internet.
  • Tiết kiệm Chi phí: Không còn nỗi lo về chi phí bản quyền tính theo đầu người (Per-user pricing) khi số lượng nhân sự mở rộng. Docker giúp tận dụng tối đa tài nguyên phần cứng sẵn có.
---

Chuẩn bị Hệ thống trước khi Triển khai

Để quá trình cài đặt diễn ra suôn sẻ, hệ thống VPS (Virtual Private Server) hoặc máy chủ nội bộ của bạn cần đáp ứng các yêu cầu cơ bản sau:

  1. Hệ điều hành: Ubuntu Server 20.04 LTS hoặc 22.04 LTS (khuyến nghị để có độ ổn định cao nhất).
  2. Cấu hình Phần cứng Tối thiểu: 1 vCPU, 2GB RAM và 20GB dung lượng ổ cứng SSD trống.
  3. Công cụ Cài đặt: Docker Engine và Docker Compose đã được cài đặt và cấu hình quyền chạy không cần sudo.
  4. Mạng và Tên miền: Một tên miền hoặc subdomain nội bộ (ví dụ: excalidraw.company.local) định tuyến về IP của VPS, cùng với chứng chỉ SSL (Let's Encrypt hoặc Self-signed) để thiết lập kết nối mã hóa HTTPS.
---

Hướng dẫn Từng bước Triển khai Excalidraw bằng Docker Compose

Excalidraw được cấu trúc từ hai thành phần chính: giao diện người dùng (Frontend) và dịch vụ phòng cộng tác thời gian thực (Excalidraw Room). Chúng ta sẽ sử dụng Docker Compose để quản lý cả hai dịch vụ này một cách đồng bộ.

Bước 1: Tạo thư mục dự án

Truy cập vào VPS qua SSH và tạo một thư mục riêng biệt để quản lý cấu hình:

mkdir -p ~/excalidraw-stack
cd ~/excalidraw-stack

Bước 2: Cấu hình File docker-compose.yml

Tạo file docker-compose.yml bằng trình chỉnh sửa nano hoặc vim và dán đoạn mã cấu hình dưới đây:

Lưu ý: Cấu hình này bao gồm cả dịch vụ frontend và backend xử lý tính năng cộng tác trực tuyến (collab server).

version: '3.8'

services:
  excalidraw-frontend:
    image: excalidraw/excalidraw:latest
    container_name: excalidraw_web
    ports:
      - "8080:80"
    environment:
      - REACT_APP_BACKEND_V2_GET_URL=[https://excalidraw-api.company.local/api/v2/](https://excalidraw-api.company.local/api/v2/)
      - REACT_APP_BACKEND_V2_POST_URL=[https://excalidraw-api.company.local/api/v2/](https://excalidraw-api.company.local/api/v2/)
      - REACT_APP_WS_SERVER_URL=wss://excalidraw-api.company.local
    restart: unless-stopped

  excalidraw-room:
    image: excalidraw/excalidraw-room:latest
    container_name: excalidraw_room
    ports:
      - "5001:5001"
    restart: unless-stopped

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

Thực hiện lệnh sau để Docker tự động tải Image và khởi chạy dịch vụ dưới nền:

docker compose up -d

Kiểm tra trạng thái hoạt động của các container bằng lệnh docker ps để đảm bảo cả hai dịch vụ đều ở trạng thái Up.

---

Cấu hình Reverse Proxy với Nginx và Kích hoạt HTTPS

Để đảm bảo tính năng cộng tác thời gian thực thông qua WebSockets hoạt động ổn định và an toàn, việc cấu hình một Reverse Proxy hỗ trợ SSL là bắt buộc. Dưới đây là tệp cấu hình Nginx mẫu dành cho doanh nghiệp:

server {
    listen 80;
    server_name excalidraw.company.local;
    return 301 https://$host$request_uri;
}

server {
    listen 443 ssl http2;
    server_name excalidraw.company.local;

    ssl_certificate /etc/nginx/ssl/excalidraw.crt;
    ssl_certificate_key /etc/nginx/ssl/excalidraw.key;

    location / {
        proxy_pass http://localhost:8080;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
    }

    location /socket.io/ {
        proxy_pass http://localhost:5001;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "Upgrade";
        proxy_set_header Host $host;
    }
}

Sau khi lưu cấu hình, hãy khởi động lại Nginx bằng lệnh sudo systemctl restart nginx. Giờ đây, đội ngũ của bạn đã có thể truy cập vào nền tảng thông qua đường dẫn bảo mật [https://excalidraw.company.local](https://excalidraw.company.local).

---

Các Lưu ý Quan trọng về Bảo mật và Tối ưu hóa Vận hành

Triển khai thành công mới chỉ là bước khởi đầu. Để hệ thống vận hành bền vững trong môi trường doanh nghiệp, quản trị viên hệ thống cần lưu ý các điểm sau:

  • Giới hạn Quyền Truy cập Mạng (Network ACLs): Nếu hệ thống chỉ phục vụ nội bộ, hãy sử dụng Firewall (như UFW trên Ubuntu) để chỉ cho phép các dải IP của văn phòng hoặc mạng VPN công ty truy cập vào port 80 và 443.
  • Chiến lược Sao lưu Dữ liệu (Backup Strategy): Mặc dù Excalidraw lưu trữ phần lớn dữ liệu tạm thời ở LocalStorage của trình duyệt người dùng, nhưng đối với các phòng cộng tác chung, hãy thiết lập kịch bản sao lưu các volume của container excalidraw-room định kỳ mỗi ngày.
  • Cập nhật Tự động và An toàn: Sử dụng công cụ như Watchtower để tự động kiểm tra và cập nhật các bản vá bảo mật mới nhất từ Docker Hub của Excalidraw mà không làm gián đoạn công việc của người dùng quá lâu.
---

Lời kết

Việc tự host Excalidraw trên Docker VPS nội bộ là một giải pháp hoàn hảo giúp doanh nghiệp dung hòa giữa hiệu suất làm việc sáng tạo và an toàn thông tin doanh nghiệp. Quy trình triển khai tinh gọn thông qua Docker không chỉ giúp tiết kiệm tài nguyên quản trị mà còn đặt nền móng vững chắc cho một không gian làm việc số độc lập và bảo mật. Hãy bắt tay vào triển khai ngay hôm nay để mang lại một công cụ cộng tác trực quan mạnh mẽ và an toàn cho đội ngũ của bạn.

Hướng dẫn Tự Host Excalidraw trên Docker VPS: Giải Pháp Vẽ Sơ Đồ Tư Duy Và Cộng Tác Bảo Mật Cho Doanh Nghiệp | DPTCloud