Requirements
- Docker and Docker Compose
- S3 bucket with documents
- OpenRouter or OpenAI API key
1. Prepare Configuration Files
Create.env.rag from .env.rag.example:
S3_ACCOUNT1_ENDPOINT: S3 API endpoint URL (https://s3.amazonaws.comfor AWS S3)S3_ACCOUNT1_ACCESS_KEY: access key ID used to read bucket objectsS3_ACCOUNT1_SECRET_KEY: secret key paired with the access keyS3_ACCOUNT1_REGION: bucket region (example:us-east-1)S3_ACCOUNT1_BUCKETS: one bucket or comma-separated bucket namesS3_ACCOUNT1_SCHEDULES: ingestion interval in seconds (or comma-separated intervals, default is3600)S3_ACCOUNT1_USE_SSL: enable TLS for S3 connection (default isTrue)OPENROUTER_API_KEY: API key for OpenRouter model calls (optional, only used for rephrase)
config.yaml from config.yaml.example.
Default configuration is pre-configured for:
- single S3 connector
sentence-transformers/all-mpnet-base-v2for embeddingsopenai/gpt-oss-20b:freefor rephrase endpoint (optional, only used for rephrase)
.env from .env.openwebui.example:
- set
OPENAI_API_KEY - optionally set
OPENAI_DEFAULT_MODEL(default isopenai/gpt-4.1-nano) - optionally change
HTTP_WEB_PORT(default is3000)
2. Start Stack
Run:3. Login
Openhttp://localhost:3000.
Use admin credentials from .env:
- email:
X_WEBUI_ADMIN_EMAIL - password:
X_WEBUI_ADMIN_PASS
- username:
admin@example123.com - password:
q1w2e3r4!