Difference between revisions of "LLM: multiple open-webui"

From OnnoWiki
Jump to navigation Jump to search
(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**...")
 
 
Line 1: Line 1:
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.
+
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**.
+
Berikut adalah panduan '''lengkap''' dan jelas menggunakan '''Docker'''.
  
---
 
  
## **Langkah 1: Jalankan Ollama (LLM Server)**
+
=='''Langkah 1: Jalankan Ollama (LLM Server)'''==
Kamu hanya butuh **satu instance Ollama**. Jalankan Ollama seperti ini:
+
Kamu hanya butuh '''satu instance Ollama'''. Jalankan Ollama seperti ini:
  
```bash
+
docker run -d \
docker run -d \
+
  --name ollama \
  --name ollama \
+
  --restart always \
  --restart always \
+
  -p 11434:11434 \
  -p 11434:11434 \
+
  -v ollama:/root/.ollama \
  -v ollama:/root/.ollama \
+
  ollama/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)**
+
=='''Langkah 2: Tarik dan Load Model LLM (opsional)'''==
 
Misalnya, kamu ingin menggunakan `llama3`:
 
Misalnya, kamu ingin menggunakan `llama3`:
  
```bash
+
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)**
+
=='''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:
+
===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:
+
docker run -d \
```bash
+
  --name openwebui1 \
docker run -d \
+
  --restart always \
  --name openwebui2 \
+
  -p 3000:8080 \
  --restart always \
+
  -e OLLAMA_BASE_URL=http://<host-ip>:11434 \
  -p 3001:8080 \
+
  openwebui/openwebui
  -e OLLAMA_BASE_URL=http://<host-ip>:11434 \
 
  openwebui/openwebui
 
```
 
  
### Open WebUI Port 3002:
+
===Open WebUI Port 3001:===
```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.
+
docker run -d \
 +
  --name openwebui2 \
 +
  --restart always \
 +
  -p 3001:8080 \
 +
  -e OLLAMA_BASE_URL=http://<host-ip>:11434 \
 +
  openwebui/openwebui
  
---
+
===Open WebUI Port 3002:===
  
## ✅ Catatan Penting
+
docker run -d \
 +
  --name openwebui3 \
 +
  --restart always \
 +
  -p 3002:8080 \
 +
  -e OLLAMA_BASE_URL=http://<host-ip>:11434 \
 +
  openwebui/openwebui
  
- **OLLAMA_BASE_URL** harus mengarah ke IP atau hostname dari instance `ollama`, bisa juga `host.docker.internal` (khusus pengguna Docker Desktop di Windows/Mac).
+
> '''Ganti `<host-ip>`''' dengan IP address atau `localhost` jika dijalankan dari PC yang sama.
- 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)
+
==Catatan Penting==
  
Kalau kamu ingin pakai `docker-compose.yml`:
+
* '''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).
  
```yaml
+
==✅ Versi Docker Compose (Opsional)==
version: '3.8'
 
  
services:
+
Kalau kamu ingin pakai `docker-compose.yml`:
  ollama:
 
    image: ollama/ollama
 
    container_name: ollama
 
    ports:
 
      - "11434:11434"
 
    volumes:
 
      - ollama_data:/root/.ollama
 
    restart: always
 
  
  openwebui1:
+
services:
    image: openwebui/openwebui
+
  ollama:
    container_name: openwebui1
+
    image: ollama/ollama
    ports:
+
    container_name: ollama
      - "3000:8080"
+
    ports:
    environment:
+
      - "11434:11434"
      - OLLAMA_BASE_URL=http://ollama:11434
+
    volumes:
    restart: always
+
      - 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:
  
  openwebui2:
+
Jalankan dengan:
    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:
+
docker compose up -d
  ollama_data:
 
```
 
 
 
Jalankan dengan:
 
  
```bash
 
docker compose up -d
 
```
 
  
---
+
==Pranala Menarik==
  
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?
+
* [[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


Pranala Menarik