|
|
|
@@ -1,7 +1,7 @@
|
|
|
|
|
name: compose
|
|
|
|
|
name: rinoa
|
|
|
|
|
networks:
|
|
|
|
|
default:
|
|
|
|
|
name: compose_default
|
|
|
|
|
name: rinoa_default
|
|
|
|
|
nextcloud-aio:
|
|
|
|
|
external: true
|
|
|
|
|
x-jitsi-admin: &jitsi_admin_app
|
|
|
|
@@ -13,87 +13,6 @@ x-jitsi-admin: &jitsi_admin_app
|
|
|
|
|
PHP_INI_MEMORY_LIMIT: "1G"
|
|
|
|
|
PHP_EXTENSION_LDAP: 1
|
|
|
|
|
PHP_EXTENSION_INTL: 1
|
|
|
|
|
x-librechat: &librechat-env
|
|
|
|
|
ALLOW_EMAIL_LOGIN: true
|
|
|
|
|
ALLOW_PASSWORD_RESET: false
|
|
|
|
|
ALLOW_REGISTRATION: true
|
|
|
|
|
ALLOW_SHARED_LINKS_PUBLIC: true
|
|
|
|
|
ALLOW_SHARED_LINKS: true
|
|
|
|
|
ALLOW_SOCIAL_LOGIN: false
|
|
|
|
|
ALLOW_SOCIAL_REGISTRATION: false
|
|
|
|
|
ALLOW_UNVERIFIED_EMAIL_LOGIN: true
|
|
|
|
|
ANTHROPIC_API_KEY: ${LIBRECHAT_ANTHROPIC_API_KEY}
|
|
|
|
|
ANTHROPIC_MODELS: claude-3-7-sonnet-latest,claude-3-7-sonnet-20250219,claude-3-5-haiku-20241022,claude-3-5-sonnet-20241022,claude-3-5-sonnet-latest,claude-3-5-sonnet-20240620,claude-3-opus-20240229,claude-3-sonnet-20240229,claude-3-haiku-20240307,claude-2.1,claude-2,claude-1.2,claude-1,claude-1-100k,claude-instant-1,claude-instant-1-100k
|
|
|
|
|
APPLE_CALLBACK_URL: /oauth/apple/callback
|
|
|
|
|
APP_TITLE: LibreChat
|
|
|
|
|
BAN_DURATION: 1000 * 60 * 60 * 2
|
|
|
|
|
BAN_INTERVAL: 20
|
|
|
|
|
BAN_VIOLATIONS: true
|
|
|
|
|
CHECK_BALANCE: false
|
|
|
|
|
CONCURRENT_MESSAGE_MAX: 2
|
|
|
|
|
CONCURRENT_VIOLATION_SCORE: 1
|
|
|
|
|
CONSOLE_JSON: true
|
|
|
|
|
CREDS_IV: ${LIBRECHAT_CREDS_IV}
|
|
|
|
|
CREDS_KEY: ${LIBRECHAT_CREDS_KEY}
|
|
|
|
|
DB_HOST: librechat-vectordb
|
|
|
|
|
DEBUG_CONSOLE: false
|
|
|
|
|
DEBUG_LOGGING: true
|
|
|
|
|
DEBUG_OPENAI: false
|
|
|
|
|
DEEPSEEK_API_KEY: ${LIBRECHAT_DEEPSEEK_API_KEY}
|
|
|
|
|
DISCORD_CALLBACK_URL: /oauth/discord/callback
|
|
|
|
|
DOMAIN_CLIENT: https://ai.${MY_TLD}
|
|
|
|
|
DOMAIN_SERVER: https://ai.${MY_TLD}
|
|
|
|
|
EMAIL_FROM: noreply@librechat.ai
|
|
|
|
|
EMAIL_HOST: postal-smtp
|
|
|
|
|
EMAIL_PORT: 25
|
|
|
|
|
FACEBOOK_CALLBACK_URL: /oauth/facebook/callback
|
|
|
|
|
GITHUB_CALLBACK_URL: /oauth/github/callback
|
|
|
|
|
GOOGLE_CALLBACK_URL: /oauth/google/callback
|
|
|
|
|
HELP_AND_FAQ_URL: https://librechat.ai
|
|
|
|
|
HOST: 0.0.0.0
|
|
|
|
|
ILLEGAL_MODEL_REQ_SCORE: 5
|
|
|
|
|
JWT_REFRESH_SECRET: ${LIBRECHAT_JWT_REFRESH_SECRET}
|
|
|
|
|
JWT_SECRET: ${LIBRECHAT_JWT_SECRET}
|
|
|
|
|
LIMIT_CONCURRENT_MESSAGES: true
|
|
|
|
|
LIMIT_MESSAGE_IP: true
|
|
|
|
|
LIMIT_MESSAGE_USER: false
|
|
|
|
|
LOGIN_MAX: 7
|
|
|
|
|
LOGIN_VIOLATION_SCORE: 1
|
|
|
|
|
LOGIN_WINDOW: 5
|
|
|
|
|
MEILI_HOST: http://meilisearch:7700
|
|
|
|
|
MEILI_MASTER_KEY: ${MEILISEARCH_MASTER_KEY}
|
|
|
|
|
MEILI_NO_ANALYTICS: true
|
|
|
|
|
MESSAGE_IP_MAX: 40
|
|
|
|
|
MESSAGE_IP_WINDOW: 1
|
|
|
|
|
MESSAGE_USER_MAX: 40
|
|
|
|
|
MESSAGE_USER_WINDOW: 1
|
|
|
|
|
MESSAGE_VIOLATION_SCORE: 1
|
|
|
|
|
MISTRAL_API_KEY: ${LIBRECHAT_MISTRAL_API_KEY}
|
|
|
|
|
MONGO_URI: mongodb://librechat:${LIBRECHAT_MONGODB_PASSWORD}@mongodb:27017/librechat?replicaSet=rinoa
|
|
|
|
|
NO_INDEX: true
|
|
|
|
|
NON_BROWSER_VIOLATION_SCORE: 20
|
|
|
|
|
OPENAI_API_KEY: ${LIBRECHAT_OPENAI_API_KEY}
|
|
|
|
|
OPENAI_MODELS: o1,o1-mini,o1-preview,gpt-4o,chatgpt-4o-latest,gpt-4o-mini,gpt-3.5-turbo-0125,gpt-3.5-turbo-0301,gpt-3.5-turbo,gpt-4,gpt-4-0613,gpt-4-vision-preview,gpt-3.5-turbo-0613,gpt-3.5-turbo-16k-0613,gpt-4-0125-preview,gpt-4-turbo-preview,gpt-4-1106-preview,gpt-3.5-turbo-1106,gpt-3.5-turbo-instruct,gpt-3.5-turbo-instruct-0914,gpt-3.5-turbo-16k
|
|
|
|
|
OPENAI_MODERATION: false
|
|
|
|
|
OPENID_CALLBACK_URL: /oauth/openid/callback
|
|
|
|
|
OPENID_SCOPE: "openid profile email"
|
|
|
|
|
OPENWEATHER_API_KEY: ${HOMEPAGE_OPENWEATHERMAP_API_KEY}
|
|
|
|
|
PORT: 3080
|
|
|
|
|
POSTGRES_DB: librechat
|
|
|
|
|
POSTGRES_PASSWORD: ${LIBRECHAT_PG_DB_PASSWD}
|
|
|
|
|
POSTGRES_USER: librechat
|
|
|
|
|
RAG_PORT: 8000
|
|
|
|
|
REDIS_PREFIX: librechat_
|
|
|
|
|
REDIS_URI: librechat-valkey:6379
|
|
|
|
|
REFRESH_TOKEN_EXPIRY: (1000 * 60 * 60 * 24) * 7
|
|
|
|
|
REGISTER_MAX: 5
|
|
|
|
|
REGISTER_WINDOW: 60
|
|
|
|
|
REGISTRATION_VIOLATION_SCORE: 1
|
|
|
|
|
SD_WEBUI_URL: http://stable-diffusion-webui:7860
|
|
|
|
|
SEARCH: true
|
|
|
|
|
SESSION_EXPIRY: 1000 * 60 * 15
|
|
|
|
|
TRUST_PROXY: 1
|
|
|
|
|
USE_REDIS: false
|
|
|
|
|
x-maxun: &maxun-env
|
|
|
|
|
environment:
|
|
|
|
|
NODE_ENV: production
|
|
|
|
@@ -452,6 +371,66 @@ services:
|
|
|
|
|
volumes:
|
|
|
|
|
- ${DOCKER_VOLUME_CONFIG}/argus/config.yml:/app/config.yml
|
|
|
|
|
- ${DOCKER_VOLUME_CONFIG}/argus/:/app/data/
|
|
|
|
|
asciinema:
|
|
|
|
|
container_name: asciinema
|
|
|
|
|
depends_on:
|
|
|
|
|
asciinema-pg-db:
|
|
|
|
|
condition: service_healthy
|
|
|
|
|
required: true
|
|
|
|
|
environment:
|
|
|
|
|
DATABASE_URL: postgresql://asciinema:${ASCIINEMA_PG_DB_PASSWORD}@asciinema-pg-db:5432/asciinema
|
|
|
|
|
DEFAULT_AVATAR: gravatar
|
|
|
|
|
MAIL_FROM_ADDRESS: noreply@${MY_TLD}
|
|
|
|
|
SECRET_KEY_BASE: ${ASCIINEMA_SECRET_KEY_BASE}
|
|
|
|
|
SIGN_UP_DISABLED: true
|
|
|
|
|
SMTP_HOST: postal-smtp
|
|
|
|
|
SMTP_USERNAME: ${POSTAL_SMTP_AUTH_USER}
|
|
|
|
|
SMTP_PASSWORD: ${POSTAL_SMTP_AUTH_PASSWORD}
|
|
|
|
|
SMTP_PORT: 25
|
|
|
|
|
UPLOAD_AUTH_REQUIRED: true
|
|
|
|
|
URL_HOST: asciinema.trez.wtf
|
|
|
|
|
URL_PORT: 4000
|
|
|
|
|
URL_SCHEME: https
|
|
|
|
|
image: ghcr.io/asciinema/asciinema-server:latest
|
|
|
|
|
labels:
|
|
|
|
|
homepage.group: Code/DevOps
|
|
|
|
|
homepage.name: Asciinema
|
|
|
|
|
homepage.href: https://asciinema.${MY_TLD}
|
|
|
|
|
homepage.icon: asciinema.svg
|
|
|
|
|
homepage.description: Platform for hosting and sharing terminal session recordings
|
|
|
|
|
swag: enable
|
|
|
|
|
swag_port: 4000
|
|
|
|
|
swag_proto: http
|
|
|
|
|
swag_url: asciinema.${MY_TLD}
|
|
|
|
|
swag.uptime-kuma.enabled: true
|
|
|
|
|
swag.uptime-kuma.name: Asciinema
|
|
|
|
|
swag.uptime-kuma.monitor.url: https://asciinema.${MY_TLD}
|
|
|
|
|
swag.uptime-kuma.monitor.interval: 300
|
|
|
|
|
swag.uptime-kuma.monitor.retryInterval: 60
|
|
|
|
|
swag.uptime-kuma.monitor.maxretries: 5
|
|
|
|
|
ports:
|
|
|
|
|
- 4000:4000
|
|
|
|
|
- 4002:4002
|
|
|
|
|
restart: unless-stopped
|
|
|
|
|
volumes:
|
|
|
|
|
- asciinema-data:/var/opt/asciinema
|
|
|
|
|
asciinema-pg-db:
|
|
|
|
|
container_name: asciinema-pg-db
|
|
|
|
|
environment:
|
|
|
|
|
POSTGRES_PASSWORD: ${ASCIINEMA_PG_DB_PASSWORD}
|
|
|
|
|
POSTGRES_USER: asciinema
|
|
|
|
|
POSTGRES_DB: asciinema
|
|
|
|
|
expose:
|
|
|
|
|
- 5432
|
|
|
|
|
healthcheck:
|
|
|
|
|
test: ['CMD-SHELL', 'pg_isready -U asciinema']
|
|
|
|
|
interval: 2s
|
|
|
|
|
timeout: 5s
|
|
|
|
|
retries: 10
|
|
|
|
|
image: postgres:14-alpine
|
|
|
|
|
restart: unless-stopped
|
|
|
|
|
volumes:
|
|
|
|
|
- asciinema-pg-data:/var/lib/postgresql/data
|
|
|
|
|
audiobookshelf:
|
|
|
|
|
container_name: audiobookshelf
|
|
|
|
|
environment:
|
|
|
|
@@ -1221,6 +1200,7 @@ services:
|
|
|
|
|
swag.uptime-kuma.monitor.maxretries: 5
|
|
|
|
|
ports:
|
|
|
|
|
- 31037:8080
|
|
|
|
|
restart: unless-stopped
|
|
|
|
|
volumes:
|
|
|
|
|
- ${DOCKER_VOLUME_CONFIG}/dagu/:/dagu
|
|
|
|
|
- /var/run/docker.sock:/var/run/docker.sock
|
|
|
|
@@ -1886,6 +1866,26 @@ services:
|
|
|
|
|
restart: unless-stopped
|
|
|
|
|
volumes:
|
|
|
|
|
- ${DOCKER_VOLUME_CONFIG}/gitea/sonarqube-bot/:/home/bot/config/
|
|
|
|
|
gitignore-io:
|
|
|
|
|
container_name: gitignore-io
|
|
|
|
|
image: guog/gitignore.io:latest
|
|
|
|
|
labels:
|
|
|
|
|
homepage.group: Code/DevOps
|
|
|
|
|
homepage.name: gitignore-io
|
|
|
|
|
homepage.href: https://gitignore.${MY_TLD}
|
|
|
|
|
homepage.icon: /icons/gitignore-io.svg
|
|
|
|
|
homepage.description: .gitignore generator
|
|
|
|
|
swag: enable
|
|
|
|
|
swag_url: gitignore.${MY_TLD}
|
|
|
|
|
swag.uptime-kuma.enabled: true
|
|
|
|
|
swag.uptime-kuma.name: gitignore-io
|
|
|
|
|
swag.uptime-kuma.monitor.url: https://gitignore.${MY_TLD}
|
|
|
|
|
swag.uptime-kuma.monitor.interval: 300
|
|
|
|
|
swag.uptime-kuma.monitor.retryInterval: 60
|
|
|
|
|
swag.uptime-kuma.monitor.maxretries: 5
|
|
|
|
|
ports:
|
|
|
|
|
- 14822:8080
|
|
|
|
|
restart: unless-stopped
|
|
|
|
|
gluetun:
|
|
|
|
|
cap_add:
|
|
|
|
|
- NET_ADMIN
|
|
|
|
@@ -3232,68 +3232,6 @@ services:
|
|
|
|
|
restart: unless-stopped
|
|
|
|
|
volumes:
|
|
|
|
|
- ${DOCKER_VOLUME_CONFIG}/languagetool/:/opt/languagetool/langModel
|
|
|
|
|
librechat-api:
|
|
|
|
|
container_name: librechat-api
|
|
|
|
|
depends_on:
|
|
|
|
|
- mongodb
|
|
|
|
|
- librechat-rag-api
|
|
|
|
|
environment:
|
|
|
|
|
<< : *librechat-env
|
|
|
|
|
RAG_PORT: 8000
|
|
|
|
|
RAG_API_URL: http://librechat-rag-api:8000
|
|
|
|
|
image: ghcr.io/danny-avila/librechat-dev:latest
|
|
|
|
|
labels:
|
|
|
|
|
homepage.group: Personal Tools
|
|
|
|
|
homepage.name: LibreChat
|
|
|
|
|
homepage.href: https://ai.${MY_TLD}
|
|
|
|
|
homepage.icon: sh-librechat.svg
|
|
|
|
|
homepage.description: Local AI chat
|
|
|
|
|
swag: enable
|
|
|
|
|
swag_port: 3080
|
|
|
|
|
swag_proto: http
|
|
|
|
|
swag_url: ai.${MY_TLD}
|
|
|
|
|
swag.uptime-kuma.enabled: true
|
|
|
|
|
swag.uptime-kuma.name: LibreChat
|
|
|
|
|
swag.uptime-kuma.monitor.url: https://ai.${MY_TLD}
|
|
|
|
|
swag.uptime-kuma.monitor.interval: 300
|
|
|
|
|
swag.uptime-kuma.monitor.retryInterval: 60
|
|
|
|
|
swag.uptime-kuma.monitor.maxretries: 5
|
|
|
|
|
ports:
|
|
|
|
|
- 3080:3080
|
|
|
|
|
restart: always
|
|
|
|
|
user: ${PUID}:${PGID}
|
|
|
|
|
volumes:
|
|
|
|
|
- ${DOCKER_VOLUME_CONFIG}/librechat/librechat.env:/app/.env
|
|
|
|
|
- ${DOCKER_VOLUME_CONFIG}/librechat/librechat.yaml:/app/librechat.yaml
|
|
|
|
|
- ${DOCKER_VOLUME_CONFIG}/librechat/images:/app/client/public/images
|
|
|
|
|
- ${DOCKER_VOLUME_CONFIG}/librechat/uploads:/app/uploads
|
|
|
|
|
- ${DOCKER_VOLUME_CONFIG}/librechat/logs:/app/api/logs
|
|
|
|
|
librechat-rag-api:
|
|
|
|
|
container_name: librechat-rag-api
|
|
|
|
|
depends_on:
|
|
|
|
|
- librechat-vectordb
|
|
|
|
|
environment:
|
|
|
|
|
<< : *librechat-env
|
|
|
|
|
RAG_PORT: 8000
|
|
|
|
|
image: ghcr.io/danny-avila/librechat-rag-api-dev-lite:latest
|
|
|
|
|
restart: always
|
|
|
|
|
librechat-valkey:
|
|
|
|
|
container_name: librechat-valkey
|
|
|
|
|
<< : *valkey-params
|
|
|
|
|
volumes:
|
|
|
|
|
- librechat-valkey-data:/data/valkey
|
|
|
|
|
librechat-vectordb:
|
|
|
|
|
container_name: librechat-vectordb
|
|
|
|
|
environment:
|
|
|
|
|
POSTGRES_DB: librechat
|
|
|
|
|
POSTGRES_USER: librechat
|
|
|
|
|
POSTGRES_PASSWORD: ${LIBRECHAT_PG_DB_PASSWD}
|
|
|
|
|
expose:
|
|
|
|
|
- 5432
|
|
|
|
|
image: ankane/pgvector:latest
|
|
|
|
|
restart: always
|
|
|
|
|
volumes:
|
|
|
|
|
- librechat-pg-data:/var/lib/postgresql/data
|
|
|
|
|
libretranslate:
|
|
|
|
|
container_name: libretranslate
|
|
|
|
|
environment:
|
|
|
|
@@ -4180,9 +4118,75 @@ services:
|
|
|
|
|
volumes:
|
|
|
|
|
- /var/run/docker.sock:/var/run/docker.sock
|
|
|
|
|
- nextcloud_aio_mastercontainer:/mnt/docker-aio-config
|
|
|
|
|
nocodb:
|
|
|
|
|
container_name: nocodb
|
|
|
|
|
depends_on:
|
|
|
|
|
nocodb-pg-db:
|
|
|
|
|
condition: service_healthy
|
|
|
|
|
required: true
|
|
|
|
|
nocodb-valkey:
|
|
|
|
|
condition: service_healthy
|
|
|
|
|
required: true
|
|
|
|
|
environment:
|
|
|
|
|
NC_DB: pg://nocodb-pg-db:5432?u=nocodb&p=${NOCODB_PG_PASSWORD}&d=nocodb
|
|
|
|
|
NC_ADMIN_EMAIL: noreply@${MY_TLD}
|
|
|
|
|
NC_ADMIN_PASSWORD: ${NOCODB_ADMIN_PASSWORD}
|
|
|
|
|
NC_PUBLIC_URL: https://nocodb.${MY_TLD}
|
|
|
|
|
NC_AUTH_JWT_SECRET: ${NOCODB_AUTH_JWT_SECRET}
|
|
|
|
|
NC_REDIS_URL: redis://nocodb-valkey:6379
|
|
|
|
|
NC_SMTP_HOST: postal-smtp
|
|
|
|
|
NC_SMTP_PORT: 25
|
|
|
|
|
NC_SMTP_SECURE: true
|
|
|
|
|
NC_SMTP_USERNAME: ${POSTAL_SMTP_AUTH_USER}
|
|
|
|
|
NC_SMTP_PASSWORD: ${POSTAL_SMTP_AUTH_PASSWORD}
|
|
|
|
|
NC_SMTP_FROM: noreply@${MY_TLD}
|
|
|
|
|
image: "nocodb/nocodb:latest"
|
|
|
|
|
labels:
|
|
|
|
|
homepage.group: Code/DevOps
|
|
|
|
|
homepage.name: NocoDB
|
|
|
|
|
homepage.href: https://nocodb.${MY_TLD}
|
|
|
|
|
homepage.icon: nocodb.svg
|
|
|
|
|
homepage.description: Turn any SQL-based database into a smart spreadsheet
|
|
|
|
|
swag: enable
|
|
|
|
|
swag_port: 8080
|
|
|
|
|
swag_proto: http
|
|
|
|
|
swag_url: nocodb.${MY_TLD}
|
|
|
|
|
swag.uptime-kuma.enabled: true
|
|
|
|
|
swag.uptime-kuma.name: NocoDB
|
|
|
|
|
swag.uptime-kuma.monitor.url: https://nocodb.${MY_TLD}
|
|
|
|
|
swag.uptime-kuma.monitor.interval: 300
|
|
|
|
|
swag.uptime-kuma.monitor.retryInterval: 60
|
|
|
|
|
swag.uptime-kuma.monitor.maxretries: 5
|
|
|
|
|
ports:
|
|
|
|
|
- 8946:8080
|
|
|
|
|
restart: unless-stopped
|
|
|
|
|
volumes:
|
|
|
|
|
- nocodb_data:/usr/app/data
|
|
|
|
|
nocodb-pg-db:
|
|
|
|
|
container_name: nocodb-pg-db
|
|
|
|
|
environment:
|
|
|
|
|
POSTGRES_DB: nocodb
|
|
|
|
|
POSTGRES_PASSWORD: ${NOCODB_PG_PASSWORD}
|
|
|
|
|
POSTGRES_USER: nocodb
|
|
|
|
|
expose:
|
|
|
|
|
- 5432
|
|
|
|
|
healthcheck:
|
|
|
|
|
interval: 10s
|
|
|
|
|
retries: 10
|
|
|
|
|
test: "pg_isready -U \"$$POSTGRES_USER\" -d \"$$POSTGRES_DB\""
|
|
|
|
|
timeout: 2s
|
|
|
|
|
image: postgres:16-alpine
|
|
|
|
|
restart: unless-stopped
|
|
|
|
|
volumes:
|
|
|
|
|
- nocodb_pg_data:/var/lib/postgresql/data
|
|
|
|
|
nocodb-valkey:
|
|
|
|
|
container_name: nocodb-valkey
|
|
|
|
|
<< : *valkey-params
|
|
|
|
|
volumes:
|
|
|
|
|
- nocodb_valkey_data:/data/valkey
|
|
|
|
|
ollama:
|
|
|
|
|
container_name: ollama
|
|
|
|
|
image: ollama/ollama
|
|
|
|
|
image: ollama/ollama:latest
|
|
|
|
|
ports:
|
|
|
|
|
- 11434:11434
|
|
|
|
|
restart: unless-stopped
|
|
|
|
@@ -4288,6 +4292,76 @@ services:
|
|
|
|
|
ports:
|
|
|
|
|
- 3734:80
|
|
|
|
|
restart: unless-stopped
|
|
|
|
|
open-webui:
|
|
|
|
|
container_name: open-webui
|
|
|
|
|
depends_on:
|
|
|
|
|
ollama:
|
|
|
|
|
condition: service_started
|
|
|
|
|
required: true
|
|
|
|
|
stable-diffusion-webui:
|
|
|
|
|
condition: service_started
|
|
|
|
|
required: true
|
|
|
|
|
environment:
|
|
|
|
|
OLLAMA_BASE_URL: http://ollama:11434
|
|
|
|
|
WEBUI_AUTH: false
|
|
|
|
|
ENABLE_IMAGE_GENERATION: "true"
|
|
|
|
|
AUTOMATIC1111_BASE_URL: http://stable-diffusion-webui:7860
|
|
|
|
|
IMAGE_SIZE: "64x64"
|
|
|
|
|
IMAGE_STEPS: "3"
|
|
|
|
|
ENABLE_OTEL: true
|
|
|
|
|
ENABLE_OTEL_METRICS: true
|
|
|
|
|
OTEL_EXPORTER_OTLP_INSECURE: true # Use insecure connection for OTLP, remove in production
|
|
|
|
|
OTEL_EXPORTER_OTLP_ENDPOINT: http://signoz-otel-collector:4317
|
|
|
|
|
OTEL_SERVICE_NAME: open-webui
|
|
|
|
|
ENABLE_RAG_WEB_SEARCH: True
|
|
|
|
|
RAG_WEB_SEARCH_ENGINE: searxng
|
|
|
|
|
RAG_WEB_SEARCH_RESULT_COUNT: 3
|
|
|
|
|
RAG_WEB_SEARCH_CONCURRENT_REQUESTS: 10
|
|
|
|
|
SEARXNG_QUERY_URL: "http://searxng:8080/search?q=<query>"
|
|
|
|
|
# LibreTranslate
|
|
|
|
|
LT_DEBUG: false
|
|
|
|
|
LT_UPDATE_MODELS: true
|
|
|
|
|
LT_SSL: false
|
|
|
|
|
LT_SUGGESTIONS: false
|
|
|
|
|
LT_METRICS: false
|
|
|
|
|
LT_HOST: http://libretranslate:5000
|
|
|
|
|
LT_API_KEYS: false
|
|
|
|
|
LT_THREADS: 12
|
|
|
|
|
LT_FRONTEND_TIMEOUT: 2000
|
|
|
|
|
# Redis Websocket
|
|
|
|
|
ENABLE_WEBSOCKET_SUPPORT: true
|
|
|
|
|
WEBSOCKET_MANAGER: redis
|
|
|
|
|
WEBSOCKET_REDIS_URL: redis://open-webui-valkey:6379/0
|
|
|
|
|
REDIS_KEY_PREFIX: open-webui
|
|
|
|
|
image: ghcr.io/open-webui/open-webui:main
|
|
|
|
|
labels:
|
|
|
|
|
homepage.group: Personal Tools
|
|
|
|
|
homepage.name: Open WebUI
|
|
|
|
|
homepage.href: https://ai.${MY_TLD}
|
|
|
|
|
homepage.icon: open-webui.svg
|
|
|
|
|
homepage.description: User-friendly and extensible AI interface
|
|
|
|
|
swag: enable
|
|
|
|
|
swag_port: 8080
|
|
|
|
|
swag_proto: http
|
|
|
|
|
swag_auth: authelia
|
|
|
|
|
swag_url: ai.${MY_TLD}
|
|
|
|
|
swag.uptime-kuma.enabled: true
|
|
|
|
|
swag.uptime-kuma.name: Open WebUI
|
|
|
|
|
swag.uptime-kuma.monitor.url: https://ai.${MY_TLD}/health
|
|
|
|
|
swag.uptime-kuma.monitor.interval: 300
|
|
|
|
|
swag.uptime-kuma.monitor.retryInterval: 60
|
|
|
|
|
swag.uptime-kuma.monitor.maxretries: 5
|
|
|
|
|
swag.uptime-kuma.monitor.type: https
|
|
|
|
|
ports:
|
|
|
|
|
- 3080:8080
|
|
|
|
|
restart: unless-stopped
|
|
|
|
|
volumes:
|
|
|
|
|
- open-webui-data:/app/backend/data
|
|
|
|
|
open-webui-valkey:
|
|
|
|
|
container_name: open-webui-valkey
|
|
|
|
|
<< : *valkey-params
|
|
|
|
|
volumes:
|
|
|
|
|
- open-webui-valkey-data:/data/valkey
|
|
|
|
|
paperless-ngx:
|
|
|
|
|
container_name: paperless-ngx
|
|
|
|
|
depends_on:
|
|
|
|
@@ -4411,6 +4485,8 @@ services:
|
|
|
|
|
DB_NAME: patchman
|
|
|
|
|
DB_USER: patchman
|
|
|
|
|
DB_PASSWORD: ${PATCHMAN_DB_PASSWORD}
|
|
|
|
|
CELERY_REDIS_HOST: patchman-valkey
|
|
|
|
|
CELERY_REDIS_PORT: 6379
|
|
|
|
|
PATCHMAN_MAINTENANCE_ENABLED: true
|
|
|
|
|
PATCHMAN_MAINTENANCE_SCHEDULE: '@daily'
|
|
|
|
|
image: ghcr.io/tigattack/patchman
|
|
|
|
@@ -4531,52 +4607,6 @@ services:
|
|
|
|
|
retries: 5
|
|
|
|
|
start_period: 3s
|
|
|
|
|
restart: always
|
|
|
|
|
pgbackweb:
|
|
|
|
|
container_name: pgbackweb
|
|
|
|
|
depends_on:
|
|
|
|
|
pgbackweb-db:
|
|
|
|
|
condition: service_healthy
|
|
|
|
|
environment:
|
|
|
|
|
PBW_ENCRYPTION_KEY: ${PGBACKWEB_ENCRYPTION_KEY}
|
|
|
|
|
PBW_POSTGRES_CONN_STRING: "postgresql://pgbackweb:${PGBACKWEB_PG_DB_PASSWD}@pgbackweb-db:5432/pgbackweb?sslmode=disable"
|
|
|
|
|
TZ: ${TZ}
|
|
|
|
|
image: eduardolat/pgbackweb:latest
|
|
|
|
|
labels:
|
|
|
|
|
homepage.group: System Administration
|
|
|
|
|
homepage.name: PG Back Web
|
|
|
|
|
homepage.href: https://pg.${MY_TLD}
|
|
|
|
|
homepage.icon: sh-pg-back-web.svg
|
|
|
|
|
homepage.description: Backups for PostgreSQL
|
|
|
|
|
swag: enable
|
|
|
|
|
swag_proto: http
|
|
|
|
|
swag_port: 8085
|
|
|
|
|
swag_url: pg.${MY_TLD}
|
|
|
|
|
swag.uptime-kuma.enabled: true
|
|
|
|
|
swag.uptime-kuma.name: PG Back Web
|
|
|
|
|
swag.uptime-kuma.monitor.url: https://pg.${MY_TLD}
|
|
|
|
|
swag.uptime-kuma.monitor.interval: 300
|
|
|
|
|
swag.uptime-kuma.monitor.retryInterval: 60
|
|
|
|
|
swag.uptime-kuma.monitor.maxretries: 5
|
|
|
|
|
ports:
|
|
|
|
|
- "8085:8085" # Access the web interface at http://localhost:8085
|
|
|
|
|
restart: unless-stopped
|
|
|
|
|
pgbackweb-db:
|
|
|
|
|
container_name: pgbackweb-db
|
|
|
|
|
environment:
|
|
|
|
|
POSTGRES_USER: pgbackweb
|
|
|
|
|
POSTGRES_DB: pgbackweb
|
|
|
|
|
POSTGRES_PASSWORD: ${PGBACKWEB_PG_DB_PASSWD}
|
|
|
|
|
expose:
|
|
|
|
|
- 5432
|
|
|
|
|
healthcheck:
|
|
|
|
|
test: ["CMD-SHELL", "pg_isready -U postgres"]
|
|
|
|
|
interval: 5s
|
|
|
|
|
timeout: 5s
|
|
|
|
|
retries: 5
|
|
|
|
|
image: postgres:16-alpine
|
|
|
|
|
restart: unless-stopped
|
|
|
|
|
volumes:
|
|
|
|
|
- pgbackweb-data:/var/lib/postgresql/data
|
|
|
|
|
planka:
|
|
|
|
|
container_name: planka
|
|
|
|
|
depends_on:
|
|
|
|
@@ -4819,61 +4849,35 @@ services:
|
|
|
|
|
ports:
|
|
|
|
|
- 36102:8000
|
|
|
|
|
restart: unless-stopped
|
|
|
|
|
portnote-web:
|
|
|
|
|
container_name: portnote
|
|
|
|
|
depends_on:
|
|
|
|
|
portnote-pg-db:
|
|
|
|
|
condition: service_started
|
|
|
|
|
required: true
|
|
|
|
|
restart: true
|
|
|
|
|
portracker:
|
|
|
|
|
container_name: portracker
|
|
|
|
|
environment:
|
|
|
|
|
JWT_SECRET: ${PORTNOTE_JWT_SECRET} # Replace with a secure random string
|
|
|
|
|
USER_SECRET: ${PORTNOTE_USER_SECRET} # Replace with a secure random string
|
|
|
|
|
LOGIN_USERNAME: portnote # Replace with a username
|
|
|
|
|
LOGIN_PASSWORD: ${PORTNOTE_LOGIN_PASSWORD} # Replace with a custom password
|
|
|
|
|
DATABASE_URL: "postgresql://portnote:${PORTNOTE_POSTGRES_PASSWORD}@portnote-pg-db:5432/portnote"
|
|
|
|
|
image: haedlessdev/portnote:latest
|
|
|
|
|
DATABASE_PATH: /data/portracker.db
|
|
|
|
|
PORT: 4999
|
|
|
|
|
image: mostafawahied/portracker:latest
|
|
|
|
|
labels:
|
|
|
|
|
swag: enable
|
|
|
|
|
swag_auth: authelia
|
|
|
|
|
swag_proto: http
|
|
|
|
|
swag_port: 3000
|
|
|
|
|
swag_port: 4999
|
|
|
|
|
swag_url: ports.${MY_TLD}
|
|
|
|
|
swag_address: 192.168.1.254
|
|
|
|
|
swag.uptime-kuma.enabled: true
|
|
|
|
|
swag.uptime-kuma.name: PortNote
|
|
|
|
|
swag.uptime-kuma.name: Portracker
|
|
|
|
|
swag.uptime-kuma.monitor.url: https://ports.${MY_TLD}
|
|
|
|
|
swag.uptime-kuma.monitor.interval: 300
|
|
|
|
|
swag.uptime-kuma.monitor.retryInterval: 60
|
|
|
|
|
swag.uptime-kuma.monitor.maxretries: 5
|
|
|
|
|
homepage.group: System Administration
|
|
|
|
|
homepage.name: PortNote
|
|
|
|
|
homepage.name: Portracker
|
|
|
|
|
homepage.href: https://ports.${MY_TLD}
|
|
|
|
|
homepage.icon: port-note.png
|
|
|
|
|
homepage.description: Management for container ports
|
|
|
|
|
ports:
|
|
|
|
|
- 23186:3000
|
|
|
|
|
restart: always
|
|
|
|
|
portnote-agent:
|
|
|
|
|
container_name: portnote-agent
|
|
|
|
|
depends_on:
|
|
|
|
|
portnote-pg-db:
|
|
|
|
|
condition: service_started
|
|
|
|
|
required: true
|
|
|
|
|
image: haedlessdev/portnote-agent:latest
|
|
|
|
|
environment:
|
|
|
|
|
DATABASE_URL: "postgresql://portnote:${PORTNOTE_POSTGRES_PASSWORD}@portnote-pg-db:5432/portnote"
|
|
|
|
|
restart: always
|
|
|
|
|
portnote-pg-db:
|
|
|
|
|
container_name: portnote-pg-db
|
|
|
|
|
image: postgres:17-alpine
|
|
|
|
|
environment:
|
|
|
|
|
POSTGRES_USER: portnote
|
|
|
|
|
POSTGRES_PASSWORD: ${PORTNOTE_POSTGRES_PASSWORD}
|
|
|
|
|
POSTGRES_DB: portnote
|
|
|
|
|
expose:
|
|
|
|
|
- 5432
|
|
|
|
|
restart: always
|
|
|
|
|
homepage.icon: sh-portracker.svg
|
|
|
|
|
homepage.description: Real-time port monitoring and discovery
|
|
|
|
|
network_mode: host
|
|
|
|
|
restart: unless-stopped
|
|
|
|
|
volumes:
|
|
|
|
|
- portnote-db-data:/var/lib/postgresql/data
|
|
|
|
|
- ${DOCKER_VOLUME_CONFIG}/portracker:/data
|
|
|
|
|
- /var/run/docker.sock:/var/run/docker.sock:ro
|
|
|
|
|
postal-smtp:
|
|
|
|
|
cap_add:
|
|
|
|
|
- NET_BIND_SERVICE
|
|
|
|
@@ -6146,38 +6150,17 @@ services:
|
|
|
|
|
restart: unless-stopped
|
|
|
|
|
volumes:
|
|
|
|
|
- ${DOCKER_VOLUME_CONFIG}/speedtest-tracker:/config
|
|
|
|
|
stable-diffusion-download:
|
|
|
|
|
container_name: stable-diffusion-download
|
|
|
|
|
image: git.${MY_TLD}/trez.one/stable-diffusion-download:v9.0.0
|
|
|
|
|
restart: unless-stopped
|
|
|
|
|
volumes:
|
|
|
|
|
- ${DOCKER_VOLUME_CONFIG}/stable-diffusion-webui/data:/data
|
|
|
|
|
stable-diffusion-webui:
|
|
|
|
|
container_name: stable-diffusion-webui
|
|
|
|
|
image: git.${MY_TLD}/trez.one/stable-diffusion-ui:v9.0.1
|
|
|
|
|
image: ghcr.io/neggles/sd-webui-docker:latest
|
|
|
|
|
environment:
|
|
|
|
|
- CLI_ARGS=--allow-code --medvram --xformers --enable-insecure-extension-access --api
|
|
|
|
|
labels:
|
|
|
|
|
homepage.name: Stable-Diffusion WebUI
|
|
|
|
|
homepage.group: Personal Tools
|
|
|
|
|
homepage.description: Deep learning, text-to-image model
|
|
|
|
|
homepage.href: https://sd.${MY_TLD}
|
|
|
|
|
homepage.icon: /icons/stable-diffusion.png
|
|
|
|
|
swag: enable
|
|
|
|
|
swag_port: 7860
|
|
|
|
|
swag_auth: authelia
|
|
|
|
|
swag_proto: http
|
|
|
|
|
swag_url: sd.${MY_TLD}
|
|
|
|
|
swag.uptime-kuma.enabled: true
|
|
|
|
|
swag.uptime-kuma.name: Stable-Diffusion WebUI
|
|
|
|
|
swag.uptime-kuma.monitor.url: https://sd.${MY_TLD}
|
|
|
|
|
swag.uptime-kuma.monitor.interval: 300
|
|
|
|
|
swag.uptime-kuma.monitor.retryInterval: 60
|
|
|
|
|
swag.uptime-kuma.monitor.maxretries: 5
|
|
|
|
|
CLI_ARGS: "--api --use-cpu all --precision full --no-half --skip-torch-cuda-test --ckpt /empty.pt --do-not-download-clip --disable-nan-check --disable-opt-split-attention"
|
|
|
|
|
PYTHONUNBUFFERED: "1"
|
|
|
|
|
TERM: "vt100"
|
|
|
|
|
SD_WEBUI_VARIANT: "default"
|
|
|
|
|
ports:
|
|
|
|
|
- 7860:7860
|
|
|
|
|
restart: unless-stopped
|
|
|
|
|
tty: true
|
|
|
|
|
volumes:
|
|
|
|
|
- ${DOCKER_VOLUME_CONFIG}/stable-diffusion-webui/data:/data
|
|
|
|
|
- ${DOCKER_VOLUME_CONFIG}/stable-diffusion-webui/output:/output
|
|
|
|
@@ -6285,6 +6268,7 @@ services:
|
|
|
|
|
environment:
|
|
|
|
|
DB_ENGINE: django.db.backends.postgresql
|
|
|
|
|
GID: 1000
|
|
|
|
|
GUNICORN_MEDIA: 1
|
|
|
|
|
POSTGRES_DB: tandoor
|
|
|
|
|
POSTGRES_HOST: tandoor-pg
|
|
|
|
|
POSTGRES_PASSWORD: ${TANDOOR_POSTGRES_PASSWORD}
|
|
|
|
@@ -6729,6 +6713,12 @@ services:
|
|
|
|
|
"password": "${TANDOOR_POSTGRES_PASSWORD}",
|
|
|
|
|
"database": "tandoor"
|
|
|
|
|
}'
|
|
|
|
|
WHODB_POSTGRES_15: '{
|
|
|
|
|
"host": "asciinema-pg-db",
|
|
|
|
|
"user": "asciinema",
|
|
|
|
|
"password": "${ASCIINEMA_PG_DB_PASSWORD}",
|
|
|
|
|
"database": "asciinema"
|
|
|
|
|
}'
|
|
|
|
|
WHODB_REDIS_1: '{
|
|
|
|
|
"host": "castopod-valkey"
|
|
|
|
|
}'
|
|
|
|
@@ -6957,6 +6947,10 @@ services:
|
|
|
|
|
command: ["zammad-websocket"]
|
|
|
|
|
container_name: zammad-websocket
|
|
|
|
|
volumes:
|
|
|
|
|
asciinema-data:
|
|
|
|
|
name: asciinema-data
|
|
|
|
|
asciinema-pg-data:
|
|
|
|
|
name: asciinema-pg-data
|
|
|
|
|
authelia-pg-db:
|
|
|
|
|
name: authelia-pg-db
|
|
|
|
|
authelia-valkey-data:
|
|
|
|
@@ -7023,10 +7017,6 @@ volumes:
|
|
|
|
|
name: karakeep-data
|
|
|
|
|
linkstack_data:
|
|
|
|
|
name: linkstack_data
|
|
|
|
|
librechat-pg-data:
|
|
|
|
|
name: librechat-pg-data
|
|
|
|
|
librechat-valkey-data:
|
|
|
|
|
name: librechat-valkey-data
|
|
|
|
|
libretranslate_api_keys:
|
|
|
|
|
name: libretranslate_api_keys
|
|
|
|
|
libretranslate_models:
|
|
|
|
@@ -7057,8 +7047,18 @@ volumes:
|
|
|
|
|
name: n8n-data
|
|
|
|
|
nextcloud_aio_mastercontainer:
|
|
|
|
|
name: nextcloud_aio_mastercontainer
|
|
|
|
|
nocodb_data:
|
|
|
|
|
name: nocodb_data
|
|
|
|
|
nocodb_pg_data:
|
|
|
|
|
name: nocodb_pg_data
|
|
|
|
|
nocodb_valkey_data:
|
|
|
|
|
name: nocodb_valkey_data
|
|
|
|
|
ollama:
|
|
|
|
|
name: ollama
|
|
|
|
|
open-webui-data:
|
|
|
|
|
name: open-webui-data
|
|
|
|
|
open-webui-valkey-data:
|
|
|
|
|
name: open-webui-valkey-data
|
|
|
|
|
paperless-ngx-data:
|
|
|
|
|
name: paperless-ngx-data
|
|
|
|
|
paperless-ngx-media:
|
|
|
|
|