~/ / Bài viết về AI / LLM cục bộ trên VPS / Open WebUI trên VPS: chạy bằng Docker và kết nối với Ollama
Open WebUI trên VPS: chạy bằng Docker và kết nối với Ollama
Một khung trò chuyện trong trình duyệt là cách dễ nhất để dùng một mô hình chạy trên máy chủ của chính bạn. Open WebUI là một giao diện như vậy, và tài liệu của nó cho biết cách khởi động bằng Docker và cách kết nối với Ollama. Bài viết này đi theo hướng dẫn bắt đầu nhanh chính thức và các hướng dẫn kết nối, từng bước một, đồng thời ghi chú chỗ hai hướng dẫn mô tả việc kết nối khác nhau.
Đăng: · 6 phút đọc · Đã đối chiếu với tài liệu chính thức của Open WebUI vào 2026-10-26. Lệnh, thẻ image và thiết lập thay đổi giữa các phiên bản, vì vậy hãy xác nhận trong tài liệu hiện hành trước khi chạy bất cứ thứ gì trên máy chủ.
Kiểm tra bộ nhớ trước
Open WebUI là một chương trình bổ sung chạy trên cùng máy chủ, và tài liệu không đưa ra con số bộ nhớ nào cho nó. Theo hướng dẫn bắt đầu nhanh, image tiêu chuẩn, có thẻ main, đã kèm sẵn các mô hình chuyển giọng nói thành văn bản và mô hình embedding. Hãy ước tính trước bộ nhớ cho mô hình của bạn, và chừa chỗ cho giao diện cùng hệ điều hành.
Dùng thử: Local LLM Memory Estimator
Ước tính
- Trọng số mô hình
- 4.84 GiB
- KV cache
- 0.56 GiB
- Dự trữ
- 1.00 GiB
- Tổng
- 6.41 GiB (6.88 GB)
- Dung lượng bộ nhớ phổ biến nhỏ nhất chứa vừa
- 8 GiB
Đây là một ước tính. Nó không bao gồm các bộ đệm tính toán của runtime, và giả định mọi lớp có cùng hình dạng KV. Hãy đo một lần chạy thật trước khi chọn gói.
Dữ liệu mô hình được kiểm tra ngày 2026-10-26.
Nguồn: Ollama library · Cấu hình mô hình (config.json) · Ollama FAQ
Mọi thứ chạy trong trình duyệt của bạn. Không có gì được tải lên.
Khởi động bằng Docker
Hướng dẫn bắt đầu nhanh phục vụ Open WebUI tại http://localhost:3000 và chạy nó chỉ với một lệnh docker run. Hãy thay your-secret-key bằng một giá trị do bạn tạo ra, chẳng hạn bằng lệnh mà hướng dẫn đưa ra cho việc này.
| Bước | Lệnh |
|---|---|
| Tạo khóa bí mật | openssl rand -hex 32 |
| Khởi động Open WebUI | docker run -d -p 3000:8080 --add-host=host.docker.internal:host-gateway -v open-webui:/app/backend/data -e WEBUI_SECRET_KEY=your-secret-key --name open-webui --restart always ghcr.io/open-webui/open-webui:main |
| Theo dõi nhật ký | docker logs -f open-webui |
- -p 3000:8080 ánh xạ cổng 3000 của máy chủ sang cổng 8080 của container.
- Volume open-webui chứa các cuộc trò chuyện, người dùng và thiết lập của bạn. Hướng dẫn nói rằng nó vẫn còn sau các lần cập nhật và rằng bạn không bao giờ nên chạy mà thiếu nó.
- WEBUI_SECRET_KEY: hướng dẫn nói hãy đặt nó một lần rồi giữ nguyên, vì nếu không có khóa cố định thì mỗi lần container được tạo lại sẽ khiến mọi người bị đăng xuất, và một khóa mới cũng đăng xuất tất cả mọi người.
- Các thẻ image: main là image tiêu chuẩn, cuda bổ sung hỗ trợ GPU NVIDIA và cần --gpus all, còn ollama đóng gói sẵn Ollama bên trong cùng container.
Tài khoản đầu tiên là quản trị viên
Màn hình đầu tiên đề nghị tạo một tài khoản quản trị. Theo hướng dẫn, tài khoản đầu tiên đó là quản trị viên, người quản lý người dùng và mọi thiết lập áp dụng cho cả hệ thống, và chức năng đăng ký tự tắt sau khi tài khoản quản trị đã tồn tại.
Khuyến nghị của chúng tôi, không phải lời của tài liệu: hãy tạo tài khoản quản trị ngay sau khi container khởi động, trước khi cho ai biết địa chỉ, vì ai vào được trang trước thì người đó có thể tạo tài khoản này.
Kết nối với Ollama: hai cách trong tài liệu
Các trang của Open WebUI mà chúng tôi đã kiểm tra mô tả việc kết nối theo hai cách khác nhau. Hãy dùng trang khớp với phiên bản bạn đang chạy, và xác nhận phiên bản của bạn cung cấp kiểu nào trong Cài đặt, Quản trị, Kết nối.
| Kết nối | Trang nói gì |
|---|---|
| Giao thức Ollama API | Trong Cài đặt > Quản trị > Kết nối, mục Quản lý kết nối Ollama API. Trang này nêu cổng 11434 là cổng thường dùng, và nói hãy dùng http://host.docker.internal:11434 khi Open WebUI chạy trong Docker còn Ollama chạy trên máy chủ. |
| Kết nối kiểu OpenAI | Thêm một kết nối kiểu OpenAI với Base URL là http://localhost:11434/v1 và một đoạn văn bản bất kỳ làm khóa API. Trang này nói Ollama không kiểm tra khóa, nhưng ô này không được để trống, và gõ ollama là dùng được. |
- Các mô hình đã tải về được phát hiện tự động và xuất hiện trong bộ chọn mô hình. Bạn có thể giới hạn chúng bằng một danh sách phân tách bằng dấu phẩy.
- Bạn có thể thêm nhiều phiên bản Ollama. Trang nói rằng các yêu cầu được phân phối bằng cách chọn ngẫu nhiên, ID mô hình phải khớp chính xác giữa các phiên bản, và một tiền tố như remote/ giúp phân biệt các phiên bản có cùng tên mô hình.
- Với điểm cuối chậm hoặc không truy cập được, trang gợi ý đặt AIOHTTP_CLIENT_TIMEOUT_MODEL_LIST=3 (mặc định là 10 giây) để chuyển sang phiên bản khác nhanh hơn.
- Nếu kết nối thất bại, trang nêu cấu hình mạng sai là nguyên nhân phổ biến nhất và dẫn tới hướng dẫn khắc phục sự cố của mình.
Các trang mà chúng tôi đã kiểm tra không nói liệu một container có thể kết nối tới Ollama chỉ lắng nghe trên 127.0.0.1 hay không, và cũng không đề cập việc mở rộng địa chỉ của Ollama. Theo FAQ của Ollama, Ollama mặc định gắn vào 127.0.0.1. Khuyến nghị của chúng tôi: đừng mở Ollama ra toàn mạng nếu không có quy tắc tường lửa giới hạn nó cho những địa chỉ bạn dùng.
Cập nhật và gỡ bỏ
| Việc cần làm | Lệnh trong hướng dẫn bắt đầu nhanh |
|---|---|
| Cập nhật thủ công | docker rm -f open-webui, rồi docker pull ghcr.io/open-webui/open-webui:main, rồi lại chạy đúng lệnh docker run như trước |
| Cập nhật bằng Watchtower | docker run --rm --volume /var/run/docker.sock:/var/run/docker.sock nickfedor/watchtower --run-once open-webui |
| Gỡ cài đặt | docker rm -f open-webui, rồi docker rmi ghcr.io/open-webui/open-webui:main, rồi docker volume rm open-webui |
Xóa volume sẽ xóa các cuộc trò chuyện, người dùng và thiết lập của bạn. Hướng dẫn nói rằng dữ liệu của bạn nằm trong volume, vì vậy hãy giữ nó khi cập nhật.
Giữ ở chế độ riêng tư
- Hướng dẫn bắt đầu nhanh có nêu một biến thể dùng WEBUI_AUTH=False. Khuyến nghị của chúng tôi, không phải lời của tài liệu: đừng dùng nó trên máy chủ mà bất kỳ ai cũng truy cập được.
- Hãy đặt HTTPS và một quy tắc tường lửa phía trước cổng 3000 trước khi chia sẻ địa chỉ, và đừng để khóa bí mật lọt vào bất cứ thứ gì bạn commit.
- Hướng dẫn bắt đầu nhanh cũng cho thấy cách trỏ Open WebUI tới một máy chủ khác bằng OLLAMA_BASE_URL. Nếu làm vậy, hãy coi kết nối đó cũng là một phần của mạng riêng của bạn.
Nguồn
Đọc tiếp
- Đặt nginx phía trước Ollama: xác thực cơ bản, HTTPS và cài đặt streamingTruy cập Ollama từ bên ngoài một cách an toàn: nginx làm proxy, xác thực cơ bản, HTTPS, cài đặt streaming và timeout, cùng một quy tắc tường lửa, theo tài liệu chính thức.
- Gọi mô hình cục bộ từ mã của bạn: structured outputs và API tương thích OpenAI trong OllamaRàng buộc đầu ra của mô hình cục bộ bằng JSON Schema và gọi Ollama từ các client kiểu OpenAI: tài liệu chính thức nói gì và điều gì không được hỗ trợ.
- Mô hình chạy cục bộ làm được gì? Tools, thinking, vision và embedding trong Ollama, và những gì chạy vừa trên VPSTools, thinking, vision, embedding: các nhãn trong thư viện Ollama có nghĩa gì, mô hình nào mang nhãn nào và dung lượng tải về lớn đến đâu.
- Cài Ollama trên VPS và giữ cho nó chạy ổn định: cài đặt, dịch vụ systemd, thiết lập và cập nhậtCài Ollama trên VPS Linux và giữ cho nó chạy ổn định: lệnh cài đặt, dịch vụ systemd, biến môi trường, nơi lưu mô hình và cập nhật, theo tài liệu chính thức.