Compare commits
16 Commits
6b8c8ee80f
..
dev
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
de0e5ae45d | ||
|
|
a7e85af935 | ||
|
|
88d63ab725 | ||
|
|
8ca027dfc3 | ||
|
|
6ac1c69393 | ||
|
|
e724d8b2e7 | ||
|
|
f53aebb8d3 | ||
|
|
16e9a2572d | ||
|
|
decc823119 | ||
|
|
a41b7902ea | ||
|
|
10badeb218 | ||
|
|
ba68e3cdd3 | ||
|
|
7ffb4a598a | ||
|
|
64fad037ae | ||
|
|
8dc456dcda | ||
|
|
a6a110ec5c |
@@ -5,12 +5,22 @@
|
||||
"POSTGRES_PASSWORD": "#POSTGRES_PASSWORD",
|
||||
"POSTGRES_ROOT_PASSWORD": "#POSTGRES_ROOT_PASSWORD"
|
||||
},
|
||||
"openwebuisearxng": {
|
||||
"SEARXNG_SECRET": "#SEARXNG_SECRET"
|
||||
},
|
||||
"openwebuicrawl4ai": {
|
||||
"CRAWL4AI_API_TOKEN": "#CRAWL4AI_API_TOKEN",
|
||||
"SECRET_KEY": "#CRAWL4AI_SECRET"
|
||||
},
|
||||
"openwebuiapp": {
|
||||
"WEBUI_ADMIN_NAME": "#WEBUI_ADMIN_NAME",
|
||||
"WEBUI_ADMIN_EMAIL": "#WEBUI_ADMIN_EMAIL",
|
||||
"WEBUI_ADMIN_PASSWORD": "#WEBUI_ADMIN_PASSWORD",
|
||||
"WEBUI_SECRET_KEY": "#WEBUI_SECRET_KEY",
|
||||
"OPENAI_API_KEY": "#OPENAI_API_KEY",
|
||||
"DATABASE_URL": "postgres://#POSTGRES_USER:#POSTGRES_PASSWORD@openwebuipostgres-db:5432/#POSTGRES_DB"
|
||||
"HF_TOKEN": "#HF_TOKEN",
|
||||
"DATABASE_URL": "postgres://#POSTGRES_USER:#POSTGRES_PASSWORD@openwebuipostgres-db:5432/#POSTGRES_DB",
|
||||
"EXTERNAL_WEB_SEARCH_API_KEY": "#SEARXNG_SECRET",
|
||||
"EXTERNAL_WEB_LOADER_API_KEY": "#CRAWL4AI_API_TOKEN"
|
||||
}
|
||||
}
|
||||
@@ -24,7 +24,7 @@
|
||||
],
|
||||
"START_ON_BOOT": "false",
|
||||
"ENTRYPOINT": "sh -c",
|
||||
"CMD": "mkdir -p /etc/user/data/openwebui/data && mkdir -p /etc/user/data/openwebui/db && mkdir -p /etc/user/data/openwebui/pipelines && mkdir -p /etc/user/data/openwebui/qdrant",
|
||||
"CMD": "mkdir -p /etc/user/data/openwebui/data && mkdir -p /etc/user/data/openwebui/db && mkdir -p /etc/user/data/openwebui/qdrant && mkdir -p /etc/user/data/openwebui/searxng && mkdir -p /etc/user/data/openwebui/crawl4ai && printf %s c2VydmVyOgogIGJpbmRfYWRkcmVzczogMC4wLjAuMAogIHBvcnQ6IDgwODAKICBsaW1pdGVyOiBmYWxzZQogIHB1YmxpY19pbnN0YW5jZTogZmFsc2UKc2VhcmNoOgogIGZvcm1hdHM6CiAgICAtIGh0bWwKICAgIC0ganNvbgp1aToKICBzdGF0aWNfdXNlX2hhc2g6IHRydWUKcmVkaXM6CiAgdXJsOiBmYWxzZQpvdXRnb2luZzoKICB1c2VyYWdlbnQ6IE1vemlsbGEvNS4wIChXaW5kb3dzIE5UIDEwLjA7IFdpbjY0OyB4NjQpIEFwcGxlV2ViS2l0LzUzNy4zNiAoS0hUTUwsIGxpa2UgR2Vja28pIENocm9tZS8xMzEuMC4wLjAgU2FmYXJpLzUzNy4zNgp1c2VfZGVmYXVsdF9zZXR0aW5nczoKICBlbmdpbmVzOgogICAgcmVtb3ZlOgogICAgICAtIGFobWlhCiAgICAgIC0gdG9yY2gKICAgICAgLSB3aWtpZGF0YQpib3RkZXRlY3Rpb246CiAgaXBfbGlzdHM6CiAgICBwYXNzX2lwOgogICAgICAtIDAuMC4wLjAvMAogICAgICAtIDo6LzA= | base64 -d > /etc/user/data/openwebui/searxng/settings.yml && printf %s W2JvdGRldGVjdGlvbi5pcF9saW1pdF0KbGlua190b2tlbiA9IGZhbHNlCg== | base64 -d > /etc/user/data/openwebui/searxng/limiter.toml",
|
||||
"PRE_START": "null",
|
||||
"POST_START": "null"
|
||||
},
|
||||
@@ -62,10 +62,10 @@
|
||||
{
|
||||
"IMAGE": "qdrant/qdrant:latest",
|
||||
"UPDATE": "true",
|
||||
"NAME": "openwebui-qdrant",
|
||||
"NAME": "openwebuiqdrant-app",
|
||||
"MEMORY": "1024M",
|
||||
"NETWORK": "openwebui-net",
|
||||
"SELECTOR": "openwebui-qdrant",
|
||||
"SELECTOR": "openwebuiqdrant-app",
|
||||
"VOLUMES": [
|
||||
{
|
||||
"SOURCE": "/etc/user/data/openwebui/qdrant",
|
||||
@@ -93,43 +93,60 @@
|
||||
"POST_START": "null"
|
||||
},
|
||||
{
|
||||
"IMAGE": "ghcr.io/open-webui/pipelines:main",
|
||||
"IMAGE": "searxng/searxng:latest",
|
||||
"UPDATE": "true",
|
||||
"NAME": "openwebui-pipelines",
|
||||
"MEMORY": "1024M",
|
||||
"NAME": "openwebuisearxng-app",
|
||||
"MEMORY": "512M",
|
||||
"NETWORK": "openwebui-net",
|
||||
"SELECTOR": "openwebui-pipelines",
|
||||
"SELECTOR": "openwebuisearxng-app",
|
||||
"VOLUMES": [
|
||||
{
|
||||
"SOURCE": "/etc/user/data/openwebui/pipelines",
|
||||
"DEST": "/app/pipelines",
|
||||
"SOURCE": "/etc/user/data/openwebui/searxng",
|
||||
"DEST": "/etc/searxng",
|
||||
"TYPE": "rw"
|
||||
}
|
||||
],
|
||||
"PORTS": [
|
||||
{
|
||||
"SOURCE": "null",
|
||||
"DEST": "9099",
|
||||
"DEST": "8080",
|
||||
"TYPE": "tcp"
|
||||
}
|
||||
],
|
||||
"ENVS": [
|
||||
{
|
||||
"OPENAI_API_BASE_URL": "#OPENAI_API_BASE_URL"
|
||||
"ENV_FILES": [
|
||||
"/etc/user/secret/openwebui/openwebui.json"
|
||||
],
|
||||
"EXTRA": "--restart always",
|
||||
"DEPEND": [],
|
||||
"START_ON_BOOT": "false",
|
||||
"CMD": "null",
|
||||
"PRE_START": "null",
|
||||
"POST_START": "null"
|
||||
},
|
||||
{
|
||||
"VECTOR_DB": "qdrant"
|
||||
},
|
||||
"IMAGE": "unclecode/crawl4ai:latest",
|
||||
"UPDATE": "true",
|
||||
"NAME": "openwebuicrawl4ai-app",
|
||||
"MEMORY": "1024M",
|
||||
"NETWORK": "openwebui-net",
|
||||
"SELECTOR": "openwebuicrawl4ai-app",
|
||||
"VOLUMES": [
|
||||
{
|
||||
"QDRANT_HOST": "openwebui-qdrant"
|
||||
},
|
||||
{
|
||||
"QDRANT_PORT": "6333"
|
||||
},
|
||||
{
|
||||
"QDRANT_URI": "http://openwebui-qdrant:6333"
|
||||
"SOURCE": "/etc/user/data/openwebui/crawl4ai",
|
||||
"DEST": "/app/data",
|
||||
"TYPE": "rw"
|
||||
}
|
||||
],
|
||||
"PORTS": [
|
||||
{
|
||||
"SOURCE": "null",
|
||||
"DEST": "11235",
|
||||
"TYPE": "tcp"
|
||||
}
|
||||
],
|
||||
"ENV_FILES": [
|
||||
"/etc/user/secret/openwebui/openwebui.json"
|
||||
],
|
||||
"EXTRA": "--restart always",
|
||||
"DEPEND": [],
|
||||
"START_ON_BOOT": "false",
|
||||
@@ -159,6 +176,12 @@
|
||||
}
|
||||
],
|
||||
"ENVS": [
|
||||
{
|
||||
"ENABLE_PERSISTENT_CONFIG": "false"
|
||||
},
|
||||
{
|
||||
"HF_HUB_OFFLINE": "#DISABLE_HUGGINGFACE"
|
||||
},
|
||||
{
|
||||
"OPENAI_API_BASE_URL": "#OPENAI_API_BASE_URL"
|
||||
},
|
||||
@@ -166,19 +189,22 @@
|
||||
"VECTOR_DB": "qdrant"
|
||||
},
|
||||
{
|
||||
"QDRANT_HOST": "openwebui-qdrant"
|
||||
"QDRANT_URI": "http://openwebuiqdrant-app:6333"
|
||||
},
|
||||
{
|
||||
"QDRANT_PORT": "6333"
|
||||
"ENABLE_WEB_SEARCH": "#ENABLE_WEB_SEARCH"
|
||||
},
|
||||
{
|
||||
"QDRANT_URI": "http://openwebui-qdrant:6333"
|
||||
"WEB_SEARCH_ENGINE": "#WEB_SEARCH_ENGINE"
|
||||
},
|
||||
{
|
||||
"ENABLE_RAG_PIPELINE": "True"
|
||||
"WEB_LOADER_ENGINE": "#WEB_LOADER_ENGINE"
|
||||
},
|
||||
{
|
||||
"RAG_PIPELINE_URL": "http://openwebui-pipelines:9099/v1"
|
||||
"SEARXNG_QUERY_URL": "#SEARXNG_QUERY_URL"
|
||||
},
|
||||
{
|
||||
"EXTERNAL_WEB_LOADER_URL": "#EXTERNAL_WEB_LOADER_URL"
|
||||
}
|
||||
],
|
||||
"ENV_FILES": [
|
||||
|
||||
@@ -55,6 +55,42 @@
|
||||
"advanced": "true",
|
||||
"type": "password"
|
||||
},
|
||||
{
|
||||
"description": "Hugging Face token",
|
||||
"key": "HF_TOKEN",
|
||||
"value": "",
|
||||
"info": "Optional Hugging Face API token for TTS and model access features.",
|
||||
"advanced": "true",
|
||||
"type": "password"
|
||||
},
|
||||
{
|
||||
"description": "Disable Hugging Face requests",
|
||||
"key": "DISABLE_HUGGINGFACE",
|
||||
"value": "1",
|
||||
"info": "Set to 1 to disable all outgoing requests to huggingface.co at startup. Set to 0 or leave empty to allow Hugging Face access.",
|
||||
"advanced": "true"
|
||||
},
|
||||
{
|
||||
"description": "SearXNG secret key",
|
||||
"key": "SEARXNG_SECRET",
|
||||
"value": "",
|
||||
"required": "true",
|
||||
"generated": "openssl|hex|32"
|
||||
},
|
||||
{
|
||||
"description": "Crawl4AI API token",
|
||||
"key": "CRAWL4AI_API_TOKEN",
|
||||
"value": "",
|
||||
"required": "true",
|
||||
"generated": "random|md5|24"
|
||||
},
|
||||
{
|
||||
"description": "Crawl4AI secret key",
|
||||
"key": "CRAWL4AI_SECRET",
|
||||
"value": "",
|
||||
"required": "true",
|
||||
"generated": "openssl|hex|32"
|
||||
},
|
||||
{
|
||||
"description": "Postgres database name",
|
||||
"key": "POSTGRES_DB",
|
||||
@@ -82,6 +118,41 @@
|
||||
"value": "",
|
||||
"required": "true",
|
||||
"generated": "random|sha256|20"
|
||||
},
|
||||
{
|
||||
"description": "Enable web search",
|
||||
"key": "ENABLE_WEB_SEARCH",
|
||||
"value": "true",
|
||||
"info": "Optional web search enabling, keep it empty if you don't want it",
|
||||
"advanced": "true"
|
||||
},
|
||||
{
|
||||
"description": "Web search engine",
|
||||
"key": "WEB_SEARCH_ENGINE",
|
||||
"value": "searxng",
|
||||
"info": "Optional web search engine Searxng, keep it empty if you don't want it or define any other if you have",
|
||||
"advanced": "true"
|
||||
},
|
||||
{
|
||||
"description": "External web search engine",
|
||||
"key": "WEB_LOADER_ENGINE",
|
||||
"value": "external",
|
||||
"info": "If optional web search engine defined, keep it as is, otherwise keep it empty",
|
||||
"advanced": "true"
|
||||
},
|
||||
{
|
||||
"description": "Web",
|
||||
"key": "SEARXNG_QUERY_URL",
|
||||
"value": "http://openwebuisearxng-app:8080/search",
|
||||
"info": "Optional web search engine Searxng, keep it empty if you don't want it",
|
||||
"advanced": "true"
|
||||
},
|
||||
{
|
||||
"description": "External web search engine",
|
||||
"key": "EXTERNAL_WEB_LOADER_URL",
|
||||
"value": "http://openwebuicrawl4ai-app:11235/crawl",
|
||||
"info": "Optional crawl4ai application url, keep it as is, otherwise keep it empty",
|
||||
"advanced": "true"
|
||||
}
|
||||
]
|
||||
}
|
||||
+3
-24
@@ -6,54 +6,40 @@
|
||||
"icon": "data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHZpZXdCb3g9IjkuMTQgMTQxLjggNTczLjY1IDU3My42NSI+CjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Ci5zdDB7ZmlsbC1ydWxlOmV2ZW5vZGQ7Y2xpcC1ydWxlOmV2ZW5vZGQ7ZmlsbDojNDA0RjU0O30KLnN0MXtmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDtmaWxsOiNFNUU1RTU7fQouc3Qye2ZpbGwtcnVsZTpldmVub2RkO2NsaXAtcnVsZTpldmVub2RkO2ZpbGw6I0NDQ0NDQzt9Ci5zdDN7ZmlsbC1ydWxlOmV2ZW5vZGQ7Y2xpcC1ydWxlOmV2ZW5vZGQ7ZmlsbDojMzdCRUZGO30KPC9zdHlsZT4KPHBvbHlnb24gY2xhc3M9InN0MyIgcG9pbnRzPSI1ODIuNzksNTQ5Ljc3IDI5NS45NiwzODQuMSAyOTUuOTYsMjA3LjI3IDU4Mi43OSwzNzIuOTUgIi8+Cjxwb2x5Z29uIGNsYXNzPSJzdDAiIHBvaW50cz0iOS4xNCw1NDkuNzcgMjk1Ljk2LDM4NC4xIDI5NS45NiwyMDcuMjcgOS4xNCwzNzIuOTUgIi8+CjxwYXRoIGNsYXNzPSJzdDIiIGQ9Ik0yOTUuOTYsMTQxLjhjMTA5LjU2LDAsMTk4LjQxLDg4Ljg1LDE5OC40MSwxOTguNDFjMCwxMDkuNTYtODguODUsMTk4LjQxLTE5OC40MSwxOTguNDEgYy0xMDkuNTYsMC0xOTguNDEtODguODUtMTk4LjQxLTE5OC40MUM5Ny41NSwyMzAuNjUsMTg2LjQsMTQxLjgsMjk1Ljk2LDE0MS44Ii8+CjxwYXRoIGNsYXNzPSJzdDEiIGQ9Ik0yOTUuOTYsMTQxLjhjMTA5LjYsMCwxOTguNDgsODguODUsMTk4LjQ4LDE5OC40MWMwLDEwOS41Ni04OC44OCwxOTguNDEtMTk4LjQ4LDE5OC40MQljLTYyLjkxLTQyLjM0LTg4Ljk0LTEyNy42NC04OC45NC0xOTguM1MyMzMuMDUsMTg0LjIyLDI5NS45NiwxNDEuOCIvPgo8cG9seWdvbiBjbGFzcz0ic3QzIiBwb2ludHM9IjU4Mi43OSwzNzIuOTUgMjk1Ljk2LDUzOC42MiAyOTUuOTYsNzE1LjQ1IDU4Mi43OSw1NDkuNzcgIi8+Cjxwb2x5Z29uIGNsYXNzPSJzdDAiIHBvaW50cz0iOS4xNCwzNzIuOTUgMjk1Ljk2LDUzOC42MiAyOTUuOTYsNzE1LjQ1IDkuMTQsNTQ5Ljc3ICIvPgo8L3N2Zz4K",
|
||||
"fields": [
|
||||
{
|
||||
"title": "Domain",
|
||||
"details": "The domain name where Roundcube webmail will be accessible.",
|
||||
"description": "Domain",
|
||||
"key": "DOMAIN",
|
||||
"value": "",
|
||||
"required": "true"
|
||||
},
|
||||
{
|
||||
"title": "IMAP Host",
|
||||
"details": "The hostname of your IMAP email server for receiving emails",
|
||||
"description": "IMAP host",
|
||||
"key": "DEFAULT_HOST",
|
||||
"value": "",
|
||||
"required": "true"
|
||||
},
|
||||
{
|
||||
"title": "IMAP Port",
|
||||
"details": "The port number used to connect to your IMAP server",
|
||||
"description": "IMAP port",
|
||||
"key": "DEFAULT_PORT",
|
||||
"value": "993"
|
||||
},
|
||||
{
|
||||
"title": "SMTP Server",
|
||||
"details": "The hostname of your SMTP email server for sending emails",
|
||||
"description": "SMTP server",
|
||||
"key": "SMTP_SERVER",
|
||||
"value": "",
|
||||
"required": "true"
|
||||
},
|
||||
{
|
||||
"title": "SMTP Port",
|
||||
"details": "The port number used to connect to your SMTP server",
|
||||
"description": "SMTP port",
|
||||
"key": "SMTP_PORT",
|
||||
"value": "465"
|
||||
},
|
||||
{
|
||||
"title": "SMTP Username",
|
||||
"details": "The username used to authenticate with the SMTP server",
|
||||
"description": "SMTP username",
|
||||
"key": "SMTP_USER",
|
||||
"value": "",
|
||||
"advanced": "true"
|
||||
},
|
||||
{
|
||||
"title": "SMTP Password",
|
||||
"details": "The password used to authenticate with the SMTP server",
|
||||
"description": "SMTP password",
|
||||
"key": "SMTP_PASSWORD",
|
||||
"value": "",
|
||||
@@ -61,31 +47,27 @@
|
||||
"type": "password"
|
||||
},
|
||||
{
|
||||
"title": "Skip Host Validation",
|
||||
"details": "Set to true to disable SSL certificate validation",
|
||||
"info": "Set to true to disable SSL certificate validation",
|
||||
"description": "Skip host validation",
|
||||
"key": "SKIP_HOST_VALIDATION",
|
||||
"value": "false",
|
||||
"advanced": "true"
|
||||
},
|
||||
{
|
||||
"title": "Plugins",
|
||||
"details": "Comma-separated list of Roundcube plugins to enable",
|
||||
"info": "Comma-separated list of Roundcube plugins to enable",
|
||||
"description": "Plugins",
|
||||
"key": "PLUGINS",
|
||||
"value": "calendar,password",
|
||||
"advanced": "true"
|
||||
},
|
||||
{
|
||||
"title": "Upload Max Filesize",
|
||||
"details": "Maximum allowed file size for email attachments",
|
||||
"info": "Maximum allowed file size for email attachments",
|
||||
"description": "Upload max filesize",
|
||||
"key": "UPLOAD_MAX_FILESIZE",
|
||||
"value": "50M",
|
||||
"advanced": "true"
|
||||
},
|
||||
{
|
||||
"title": "Postgres Database Name",
|
||||
"description": "Postgres database name",
|
||||
"key": "POSTGRES_DB",
|
||||
"value": "",
|
||||
@@ -93,7 +75,6 @@
|
||||
"generated": "time|md5|8"
|
||||
},
|
||||
{
|
||||
"title": "Postgres Username",
|
||||
"description": "Postgres username",
|
||||
"key": "POSTGRES_USER",
|
||||
"value": "",
|
||||
@@ -101,7 +82,6 @@
|
||||
"generated": "time|md5|8"
|
||||
},
|
||||
{
|
||||
"title": "Postgres User Password",
|
||||
"description": "Postgres password for user",
|
||||
"key": "POSTGRES_PASSWORD",
|
||||
"value": "",
|
||||
@@ -109,7 +89,6 @@
|
||||
"generated": "random|md5|12"
|
||||
},
|
||||
{
|
||||
"title": "Postgres Root Password",
|
||||
"description": "Postgres root user password",
|
||||
"key": "POSTGRES_ROOT_PASSWORD",
|
||||
"value": "",
|
||||
|
||||
Reference in New Issue
Block a user