Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
31 changes: 0 additions & 31 deletions docker-compose.a1111-test.yaml

This file was deleted.

8 changes: 0 additions & 8 deletions docker-compose.amdgpu.yaml

This file was deleted.

5 changes: 0 additions & 5 deletions docker-compose.api.yaml

This file was deleted.

4 changes: 0 additions & 4 deletions docker-compose.data.yaml

This file was deleted.

122 changes: 122 additions & 0 deletions docker-compose.full.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,122 @@
name: open-webui-dev

services:
frontend:
build:
context: .
target: build
command: ["sh", "/app/src/frontend-dev.sh"]
env_file: ".env"
environment:
- NODE_OPTIONS=--max-old-space-size=3300
depends_on:
- backend
ports:
- "3000:5173"
extra_hosts:
- host.docker.internal:127.0.0.1
volumes:
- ./src:/app/src
- ./package.json:/app/package.json
- ./package-lock.json:/app/package-lock.json
- ./static/assets:/app/static/assets
- ./static/avatars:/app/static/avatars
- ./static/data:/app/static/data
- ./static/favicon:/app/static/favicon
- ./static/static:/app/static/static
- ./vite.config.ts:/app/vite.config.ts
- ./svelte.config.js:/app/svelte.config.js
- ./tsconfig.json:/app/tsconfig.json
- ./tsconfig.ionos.json:/app/tsconfig.ionos.json
- ./tailwind.config.js:/app/tailwind.config.js

backend:
build:
context: .
target: base
command: ["bash", "dev.sh"]
env_file: ".env"
environment:
- ENV=dev
# Storage: S3
# Note: you've to configure a bucket and add secrets to your .env
# (see "storage" config at the bottom)
- STORAGE_PROVIDER=s3
- S3_BUCKET_NAME=owu
- S3_ENDPOINT_URL=http://localhost:19000
- S3_REGION_NAME=eu-central-1
# Relational DB: postgres
- DATABASE_URL=postgresql://postgres:pass@localhost:5432/postgres
# Vector DB: postgres
- VECTOR_DB=pgvector
- PGVECTOR_DB_URL=postgresql://postgres:pass@localhost:5432/openwebui_vector
# Content extraction: tika
- CONTENT_EXTRACTION_ENGINE=tika
- TIKA_SERVER_URL=http://localhost:9998
depends_on:
- pgvector
- storage
network_mode: host
ports:
- "8080:8080"
extra_hosts:
- localhost:127.0.0.1
volumes:
- ./backend:/app/backend
- data:/app/backend/data

tika:
image: apache/tika:2.5.0.2-full
network_mode: host
ports:
- "9998:9998"
environment:
- TIKA_LOG_LEVEL=INFO

pgvector:
image: pgvector/pgvector:pg17
environment:
POSTGRES_USER: postgres
POSTGRES_PASSWORD: pass
POSTGRES_DB: postgres
network_mode: host
volumes:
- ./initdb.d:/docker-entrypoint-initdb.d
- pgdata:/var/lib/postgresql/data

# Inspect pgvector at http://localhost:8081/?pgsql=127.0.0.1&username=postgres&db=postgres&ns=public
adminer:
image: adminer
network_mode: host
command: ["php", "-S", "127.0.0.1:8081", "-t", "/var/www/html"]

keycloak:
image: quay.io/keycloak/keycloak:26.0.7-0
command: ["start-dev", "--http-enabled=true", "--http-port=8079", "--log-level=info", "--import-realm"]
volumes:
- ./keycloak/realm-export.json:/opt/keycloak/data/import/realm-export.json
environment:
# Needed to create a config from scratch. Causing errors when using --import-realm
# - KC_BOOTSTRAP_ADMIN_USERNAME=admin
# - KC_BOOTSTRAP_ADMIN_PASSWORD=admin
- KC_FEATURES=persistent-user-sessions
network_mode: host
ports:
- "8079:8079"

# To create a bucked run scripts/create-minio-bucket and
# add the generated credentialsto your .env
storage:
image: quay.io/minio/minio:RELEASE.2025-06-13T11-33-47Z
command: ["server", "/data", "--address", ":19000", "--console-address", ":8078"]
environment:
MINIO_ROOT_USER: "root"
MINIO_ROOT_PASSWORD: "toortoor"
network_mode: host
volumes:
- minio:/data

volumes:
data: {}
pgdata: {}
minio: {}
11 changes: 0 additions & 11 deletions docker-compose.gpu.yaml

This file was deleted.

51 changes: 51 additions & 0 deletions docker-compose.minimal.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
name: open-webui-dev

services:
frontend:
build:
context: .
target: build
command: ["sh", "/app/src/frontend-dev.sh"]
env_file: ".env"
environment:
- NODE_OPTIONS=--max-old-space-size=3300
depends_on:
- backend
ports:
- "3000:5173"
extra_hosts:
- host.docker.internal:127.0.0.1
volumes:
- ./src:/app/src
- ./package.json:/app/package.json
- ./package-lock.json:/app/package-lock.json
- ./static/assets:/app/static/assets
- ./static/avatars:/app/static/avatars
- ./static/data:/app/static/data
- ./static/favicon:/app/static/favicon
- ./static/static:/app/static/static
- ./vite.config.ts:/app/vite.config.ts
- ./svelte.config.js:/app/svelte.config.js
- ./tsconfig.json:/app/tsconfig.json
- ./tsconfig.ionos.json:/app/tsconfig.ionos.json
- ./tailwind.config.js:/app/tailwind.config.js

backend:
build:
context: .
target: base
command: ["bash", "dev.sh"]
env_file: ".env"
environment:
- ENV=dev
network_mode: host
ports:
- "8080:8080"
extra_hosts:
- localhost:127.0.0.1
volumes:
- ./backend:/app/backend
- data:/app/backend/data

volumes:
data: {}
10 changes: 0 additions & 10 deletions docker-compose.playwright.yaml

This file was deleted.

34 changes: 0 additions & 34 deletions docker-compose.yaml

This file was deleted.

5 changes: 5 additions & 0 deletions docs/IONOS/.env.ionos.sample
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,11 @@ RAG_OPENAI_API_KEY=...
# Running Python code client side via Pyodide (via Webassembly)
ENABLE_CODE_EXECUTION=false

# VectorDB
DATABASE_URL=postgresql://postgres:pass@localhost:5432/postgres
VECTOR_DB=pgvector
PGVECTOR_DB_URL=postgresql://postgres:pass@localhost:5432/openwebui_vector

# Whether to login automatically during development
# WEBUI_AUTH: False = auto-login, True = allow subscribe + login (WEBUI_SECRET_KEY required)
WEBUI_AUTH=True
Expand Down
3 changes: 3 additions & 0 deletions initdb.d/custom_init.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
CREATE DATABASE openwebui_vector;
\c openwebui_vector
CREATE EXTENSION vector;
22 changes: 22 additions & 0 deletions initdb.d/listen_on_localhost.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
#!/usr/bin/env bash

# Configure postgres Container image pgvector/pgvector:pg17 to listen on 127.0.0.1
# Mount this file into container:/docker-entrypoint-initdb.d/

CONFIG="/var/lib/postgresql/data/postgresql.conf"

echo '[pgvector-init] Ensure listen_addresses is 127.0.0.1 ...'

if [ ! -f "${CONFIG}" ]; then
echo '[pgvector-init] ${CONFIG} missing! Waiting here.'
sleep infinity
fi

if grep -qE "^listen_addresses = '127.0.0.1'" ${CONFIG}; then
echo '[pgvector-init] All fine.'
else
echo "listen_addresses = '127.0.0.1'" >> ${CONFIG}
echo '[pgvector-init] Configued.'
fi

echo '[pgvector-init] Done.'
Loading