91 lines
2.1 KiB
YAML
91 lines
2.1 KiB
YAML
version: "3"
|
|
|
|
networks:
|
|
open-webui:
|
|
external: false
|
|
searxng:
|
|
external: false
|
|
|
|
services:
|
|
open-webui:
|
|
image: ghcr.io/open-webui/open-webui:main
|
|
container_name: open-webui
|
|
volumes:
|
|
- ./open-webui-data:/app/backend/data
|
|
env_file:
|
|
- "./.env"
|
|
environment:
|
|
- ENV=prod
|
|
- PORT=8080
|
|
- WEBUI_AUTH=True
|
|
- WEBUI_SECRET_KEY=${OPEN_WEBUI_SECRET_KEY}
|
|
- DEFAULT_LOCALE=en
|
|
- ENABLE_OPENAI_API=True
|
|
- ENABLE_OLLAMA_API=False
|
|
- TASK_MODEL_EXTERNAL=gpt-4o
|
|
- OPENAI_API_KEY=${OPENAI_API_KEY}
|
|
- CORS_ALLOW_ORIGIN=https://open-webui.michaellisano.com
|
|
- SEARXNG_QUERY_URL=http://searxng:8080
|
|
restart: unless-stopped
|
|
networks:
|
|
- open-webui
|
|
- searxng
|
|
|
|
searxng:
|
|
# see: https://github.com/searxng/searxng-docker/blob/master/docker-compose.yaml
|
|
# (runs on port 8080)
|
|
container_name: open-webui-searxng
|
|
image: docker.io/searxng/searxng:latest
|
|
restart: unless-stopped
|
|
networks:
|
|
- searxng
|
|
volumes:
|
|
- ./searxng-settings.yml:/etc/searxng/settings.yml
|
|
- ./searxng:/etc/searxng:rw
|
|
environment:
|
|
- UWSGI_WORKERS=${SEARXNG_UWSGI_WORKERS:-4}
|
|
- UWSGI_THREADS=${SEARXNG_UWSGI_THREADS:-4}
|
|
cap_drop:
|
|
- ALL
|
|
cap_add:
|
|
- CHOWN
|
|
- SETGID
|
|
- SETUID
|
|
logging:
|
|
driver: "json-file"
|
|
options:
|
|
max-size: "1m"
|
|
max-file: "1"
|
|
|
|
searxng-valkey:
|
|
container_name: open-webui-searxng-valkey
|
|
image: docker.io/valkey/valkey:8-alpine
|
|
command: valkey-server --save 30 1 --loglevel warning
|
|
restart: unless-stopped
|
|
networks:
|
|
- searxng
|
|
volumes:
|
|
- ./valkey-data2:/data
|
|
cap_drop:
|
|
- ALL
|
|
cap_add:
|
|
- SETGID
|
|
- SETUID
|
|
- DAC_OVERRIDE
|
|
logging:
|
|
driver: "json-file"
|
|
options:
|
|
max-size: "1m"
|
|
max-file: "1"
|
|
|
|
open-webui-cloudflared:
|
|
container_name: open-webui-cloudflared
|
|
image: cloudflare/cloudflared
|
|
restart: unless-stopped
|
|
command: tunnel run
|
|
environment:
|
|
- TUNNEL_TOKEN=${OPEN_WEBUI_TUNNEL_TOKEN}
|
|
networks:
|
|
- open-webui
|
|
|