Difference between revisions of "LLM: multiple open-webui"
Onnowpurbo (talk | contribs) (Created page with "Untuk menjalankan **beberapa instance Open WebUI** pada **port yang berbeda** dan semuanya terhubung ke **satu instance Ollama LLM**, kamu bisa menggunakan **Docker Compose**...") |
Onnowpurbo (talk | contribs) |
||
| Line 1: | Line 1: | ||
| − | Untuk menjalankan | + | 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 | + | Berikut adalah panduan '''lengkap''' dan jelas menggunakan '''Docker'''. |
| − | |||
| − | + | ==✅ '''Langkah 1: Jalankan Ollama (LLM Server)'''== | |
| − | Kamu hanya butuh | + | Kamu hanya butuh '''satu instance Ollama'''. Jalankan Ollama seperti ini: |
| − | + | docker run -d \ | |
| − | 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. | > 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`: | Misalnya, kamu ingin menggunakan `llama3`: | ||
| − | + | docker exec -it ollama ollama pull llama3 | |
| − | docker exec -it ollama ollama pull llama3 | ||
| − | |||
Atau bisa kamu ganti sesuai model (misalnya `gemma`, `mistral`, `llama2`, dll). | 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`. | Misalnya kamu ingin 3 Open WebUI di port `3000`, `3001`, dan `3002`. | ||
| − | + | ===Open WebUI Port 3000:=== | |
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | + | docker run -d \ | |
| − | + | --name openwebui1 \ | |
| − | docker run -d \ | + | --restart always \ |
| − | + | -p 3000:8080 \ | |
| − | + | -e OLLAMA_BASE_URL=http://<host-ip>:11434 \ | |
| − | + | openwebui/openwebui | |
| − | |||
| − | |||
| − | |||
| − | + | ===Open WebUI Port 3001:=== | |
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | + | docker run -d \ | |
| + | --name openwebui2 \ | ||
| + | --restart always \ | ||
| + | -p 3001:8080 \ | ||
| + | -e OLLAMA_BASE_URL=http://<host-ip>:11434 \ | ||
| + | openwebui/openwebui | ||
| − | + | ===Open WebUI Port 3002:=== | |
| − | + | 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`: | |
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | + | 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: | |
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | + | docker compose up -d | |
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | + | ==Pranala Menarik== | |
| − | + | * [[LLM]] | |
Latest revision as of 09:01, 25 March 2025
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:
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`:
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:
docker run -d \ --name openwebui1 \ --restart always \ -p 3000:8080 \ -e OLLAMA_BASE_URL=http://<host-ip>:11434 \ openwebui/openwebui
Open WebUI Port 3001:
docker run -d \ --name openwebui2 \ --restart always \ -p 3001:8080 \ -e OLLAMA_BASE_URL=http://<host-ip>:11434 \ openwebui/openwebui
Open WebUI Port 3002:
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`:
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:
docker compose up -d