All checks were successful
Updates/open-webui-ollama-docker-deploy/pipeline/head This commit looks good
177 lines
4.4 KiB
YAML
177 lines
4.4 KiB
YAML
services:
|
|
ollama1: #For GPU 0
|
|
image: ${OLLAMA:-ollama/ollama:latest}
|
|
deploy:
|
|
resources:
|
|
reservations:
|
|
devices:
|
|
- driver: nvidia
|
|
capabilities: [gpu]
|
|
device_ids: ['0']
|
|
volumes:
|
|
- ollama-small:/root/.ollama
|
|
ports:
|
|
- 11434:11434
|
|
restart: always
|
|
container_name: ollamasmall
|
|
environment:
|
|
OLLAMA_KEEP_ALIVE: -1
|
|
networks:
|
|
- shared_net
|
|
|
|
ollama2: #For GPU 1
|
|
image: ${OLLAMA:-ollama/ollama:latest}
|
|
deploy:
|
|
resources:
|
|
reservations:
|
|
devices:
|
|
- driver: nvidia
|
|
capabilities: [gpu]
|
|
device_ids: ['1']
|
|
volumes:
|
|
- ollama:/root/.ollama
|
|
restart: always
|
|
container_name: ollamalarge
|
|
networks:
|
|
- shared_net
|
|
|
|
|
|
open_webui:
|
|
container_name: openwebui
|
|
image: ${OPENWEBUI:-ghcr.io/open-webui/open-webui:main}
|
|
ports:
|
|
- "3000:8080"
|
|
volumes:
|
|
- data:/app/backend/data
|
|
deploy:
|
|
resources:
|
|
reservations:
|
|
devices:
|
|
- driver: nvidia
|
|
capabilities: [gpu]
|
|
count: all
|
|
restart: always
|
|
networks:
|
|
- shared_net
|
|
environment:
|
|
|
|
# Privacy
|
|
SCARF_NO_ANALYTICS: True
|
|
DO_NOT_TRACK: True
|
|
ANONYMIZED_TELEMETRY: True
|
|
|
|
# General
|
|
WEBUI_URL: https://ai.hackedyour.info
|
|
ADMIN_EMAIL: adamoutler@gmail.com
|
|
ENABLE_CHANNELS: True
|
|
USE_CUDA_DOCKER: True
|
|
ENABLE_REALTIME_CHAT_SAVE: False
|
|
ENV: dev
|
|
|
|
#Database
|
|
DATABASE_URL: postgresql://openwebui_user:${PG_PASS}@openwebui_postgres_db:5432/openwebui_db
|
|
|
|
# Ollama
|
|
OLLAMA_BASE_URL: http://ollama1:11434
|
|
OLLAMA_BASE_URLS: http://ollama1:11434;http://ollama2:11434
|
|
|
|
# OpenAI
|
|
OPENAI_API_KEY: ${OPEN_AI_TOKEN}
|
|
|
|
# RAG
|
|
RAG_TEXT_SPLITTER: character
|
|
CHUNK_SIZE: 1000
|
|
CHUNK_OVERLAP: 100
|
|
VECTOR_DB: chroma
|
|
CHROMA_HTTP_HOST: chromadb
|
|
CHROMA_HTTP_PORT: 8000
|
|
ENABLE_RAG_LOCAL_WEB_FETCH: True
|
|
|
|
# TIKA
|
|
CONTENT_EXTRACTION_ENGINE: tika
|
|
TIKA_SERVER_URL: http://tika:9998
|
|
|
|
# LDAP
|
|
ENABLE_LOGIN_FORM: true
|
|
ENABLE_SIGNUP: false
|
|
ENABLE_LDAP: true
|
|
LDAP_APP_DN: ${AD_BIND_USER}
|
|
LDAP_APP_PASSWORD: ${AD_BIND_PASSWORD}
|
|
LDAP_ATTRIBUTE_FOR_USERNAME: sAMAccountName
|
|
LDAP_ATTRIBUTE_FOR_MAIL: mail
|
|
LDAP_SEARCH_BASE: CN=Users,DC=activedirectory,DC=adamoutler,DC=com
|
|
LDAP_SEARCH_FILTERS: (&(memberOf=CN=AI,OU=Groups,dc=activedirectory,dc=adamoutler,dc=com))
|
|
LDAP_SERVER_HOST: 192.168.1.100
|
|
LDAP_SERVER_LABEL: FluffysNet
|
|
LDAP_SERVER_PORT: 389
|
|
LDAP_USE_TLS: false
|
|
|
|
# OAUTH
|
|
ENABLE_OAUTH_SIGNUP: false
|
|
OAUTH_PROVIDER_NAME: git.adamoutler.com permissions
|
|
OPENID_PROVIDER_URL: https://git.adamoutler.com/.well-known/openid-configuration
|
|
OPENID_REDIRECT_URI: https://ai.hackedyour.info/oauth/oidc/callback
|
|
OAUTH_CLIENT_ID: ${CLIENT_ID}
|
|
OAUTH_CLIENT_SECRET: ${CLIENT_SECRET}
|
|
OAUTH_USERNAME_CLAIM: name
|
|
OAUTH_MERGE_ACCOUNTS_BY_EMAIL: true
|
|
|
|
# Redis Support
|
|
ENABLE_WEBSOCKET_SUPPORT: True
|
|
WEBSOCKET_MANAGER: redis # This is the default, no need to set explicitly unless changing
|
|
WEBSOCKET_REDIS_URL: redis://redis:6379/0
|
|
REDIS_URL: redis://redis:6379/0 # Also set for app state, using the same instance
|
|
|
|
|
|
tika:
|
|
image: ${TIKA:-apache/tika:latest}
|
|
ports:
|
|
- "9998:9998"
|
|
restart: always
|
|
container_name: tika
|
|
networks:
|
|
- shared_net
|
|
|
|
chromadb:
|
|
container_name: chromadb
|
|
image: ${CHROMADB:-chromadb/chroma:latest}
|
|
restart: always
|
|
volumes:
|
|
- chromadb:/chroma # Persist database storage
|
|
environment:
|
|
IS_PERSISTENT: TRUE # Enable persistent storage
|
|
networks:
|
|
- shared_net
|
|
|
|
redis:
|
|
image: redis:alpine
|
|
container_name: redis
|
|
restart: always
|
|
volumes:
|
|
- redis_data:/data
|
|
networks:
|
|
- shared_net
|
|
|
|
openwebui_postgres_db: # Renamed service key (lowercase)
|
|
image: postgres:latest
|
|
container_name: openwebui_postgres_db # Keep container name consistent
|
|
restart: always
|
|
environment:
|
|
POSTGRES_DB: openwebui_db
|
|
POSTGRES_USER: openwebui_user
|
|
POSTGRES_PASSWORD: ${PG_PASS}
|
|
volumes:
|
|
- postgres_data:/var/lib/postgresql/data
|
|
networks:
|
|
- shared_net
|
|
|
|
volumes:
|
|
ollama:
|
|
ollama-small:
|
|
data:
|
|
chromadb:
|
|
redis_data:
|
|
postgres_data:
|
|
|
|
networks:
|
|
shared_net: |