LLM: multiple open-webui
Untuk menjalankan **beberapa instance Open WebUI** pada **port yang berbeda** dan semuanya terhubung ke **satu instance Ollama LLM**, kamu bisa menggunakan **Docker Compose** atau `docker run` manual.
Berikut adalah panduan **lengkap** dan jelas menggunakan **Docker**.
---
- ✅ **Langkah 1: Jalankan Ollama (LLM Server)**
Kamu hanya butuh **satu instance Ollama**. Jalankan Ollama seperti ini:
```bash docker run -d \
--name ollama \ --restart always \ -p 11434:11434 \ -v ollama:/root/.ollama \ ollama/ollama
```
> Port 11434 adalah default API port untuk Ollama. Jangan ubah ini agar kompatibel dengan Open WebUI.
---
- ✅ **Langkah 2: Tarik dan Load Model LLM (opsional)**
Misalnya, kamu ingin menggunakan `llama3`:
```bash docker exec -it ollama ollama pull llama3 ```
Atau bisa kamu ganti sesuai model (misalnya `gemma`, `mistral`, `llama2`, dll).
---
- ✅ **Langkah 3: Jalankan Beberapa Open WebUI (di port berbeda)**
Misalnya kamu ingin 3 Open WebUI di port `3000`, `3001`, dan `3002`.
- Open WebUI Port 3000:
```bash docker run -d \
--name openwebui1 \ --restart always \ -p 3000:8080 \ -e OLLAMA_BASE_URL=http://<host-ip>:11434 \ openwebui/openwebui
```
- Open WebUI Port 3001:
```bash docker run -d \
--name openwebui2 \ --restart always \ -p 3001:8080 \ -e OLLAMA_BASE_URL=http://<host-ip>:11434 \ openwebui/openwebui
```
- Open WebUI Port 3002:
```bash docker run -d \
--name openwebui3 \ --restart always \ -p 3002:8080 \ -e OLLAMA_BASE_URL=http://<host-ip>:11434 \ openwebui/openwebui
```
> **Ganti `<host-ip>`** dengan IP address atau `localhost` jika dijalankan dari PC yang sama.
---
- ✅ Catatan Penting
- **OLLAMA_BASE_URL** harus mengarah ke IP atau hostname dari instance `ollama`, bisa juga `host.docker.internal` (khusus pengguna Docker Desktop di Windows/Mac). - Kamu bisa membuat data Open WebUI persistent dengan menambahkan `-v` untuk volume storage. - Jangan lupa, masing-masing container Open WebUI **punya user login terpisah** (walau LLM-nya sama).
---
- ✅ Versi Docker Compose (Opsional)
Kalau kamu ingin pakai `docker-compose.yml`:
```yaml version: '3.8'
services:
ollama:
image: ollama/ollama
container_name: ollama
ports:
- "11434:11434"
volumes:
- ollama_data:/root/.ollama
restart: always
openwebui1:
image: openwebui/openwebui
container_name: openwebui1
ports:
- "3000:8080"
environment:
- OLLAMA_BASE_URL=http://ollama:11434
restart: always
openwebui2:
image: openwebui/openwebui
container_name: openwebui2
ports:
- "3001:8080"
environment:
- OLLAMA_BASE_URL=http://ollama:11434
restart: always
openwebui3:
image: openwebui/openwebui
container_name: openwebui3
ports:
- "3002:8080"
environment:
- OLLAMA_BASE_URL=http://ollama:11434
restart: always
volumes:
ollama_data:
```
Jalankan dengan:
```bash docker compose up -d ```
---
Kalau kamu butuh contoh penggunaan Open WebUI dari banyak user (kayak LAN cafe AI 🤖), atau mau setup proxy + login bersama, aku bisa bantuin juga. Mau dilanjut ke situ?