{ "main": { "SERVICE_NAME": "openwebui", "DOMAIN": "#DOMAIN" }, "containers": [ { "IMAGE": "alpine:latest", "UPDATE": "true", "NAME": "openwebui-init", "NETWORK": "host", "MEMORY": "64M", "VOLUMES": [ { "SOURCE": "USER_DATA", "DEST": "/etc/user/data", "TYPE": "rw" } ], "EXTRA": "--rm", "DEPEND": "null", "ENV_FILES": [ "/etc/user/secret/openwebui/openwebui.json" ], "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 && 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" }, { "IMAGE": "postgres:16-alpine", "UPDATE": "true", "NAME": "openwebuipostgres-db", "MEMORY": "256M", "NETWORK": "openwebui-net", "SELECTOR": "openwebuipostgres-db", "VOLUMES": [ { "SOURCE": "/etc/user/data/openwebui/db", "DEST": "/var/lib/postgresql/data", "TYPE": "rw" } ], "PORTS": [ { "SOURCE": "null", "DEST": "5432", "TYPE": "tcp" } ], "ENV_FILES": [ "/etc/user/secret/openwebui/openwebui.json" ], "EXTRA": "--restart always", "DEPEND": "null", "START_ON_BOOT": "false", "CMD": "null", "PRE_START": "null", "POST_START": "null" }, { "IMAGE": "qdrant/qdrant:latest", "UPDATE": "true", "NAME": "openwebuiqdrant-app", "MEMORY": "1024M", "NETWORK": "openwebui-net", "SELECTOR": "openwebuiqdrant-app", "VOLUMES": [ { "SOURCE": "/etc/user/data/openwebui/qdrant", "DEST": "/qdrant/storage", "TYPE": "rw" } ], "PORTS": [ { "SOURCE": "null", "DEST": "6333", "TYPE": "tcp" }, { "SOURCE": "null", "DEST": "6334", "TYPE": "tcp" } ], "EXTRA": "--restart always", "DEPEND": "null", "START_ON_BOOT": "false", "CMD": "null", "PRE_START": "null", "POST_START": "null" }, { "IMAGE": "ghcr.io/open-webui/pipelines:main", "UPDATE": "true", "NAME": "openwebuipipelines-app", "MEMORY": "1024M", "NETWORK": "openwebui-net", "SELECTOR": "openwebuipipelines-app", "VOLUMES": [ { "SOURCE": "/etc/user/data/openwebui/pipelines", "DEST": "/app/pipelines", "TYPE": "rw" } ], "PORTS": [ { "SOURCE": "null", "DEST": "9099", "TYPE": "tcp" } ], "ENVS": [ { "OPENAI_API_BASE_URL": "#OPENAI_API_BASE_URL" }, { "VECTOR_DB": "qdrant" }, { "QDRANT_HOST": "openwebuiqdrant-app" }, { "QDRANT_PORT": "6333" }, { "QDRANT_URI": "http://openwebuiqdrant-app:6333" } ], "ENV_FILES": [ "/etc/user/secret/openwebui/openwebui.json" ], "EXTRA": "--restart always", "DEPEND": [], "START_ON_BOOT": "false", "CMD": "null", "PRE_START": "null", "POST_START": "null" }, { "IMAGE": "searxng/searxng:latest", "UPDATE": "true", "NAME": "openwebuisearxng-app", "MEMORY": "512M", "NETWORK": "openwebui-net", "SELECTOR": "openwebuisearxng-app", "VOLUMES": [ { "SOURCE": "/etc/user/data/openwebui/searxng", "DEST": "/etc/searxng", "TYPE": "rw" } ], "PORTS": [ { "SOURCE": "null", "DEST": "8080", "TYPE": "tcp" } ], "ENV_FILES": [ "/etc/user/secret/openwebui/openwebui.json" ], "EXTRA": "--restart always", "DEPEND": [], "START_ON_BOOT": "false", "CMD": "null", "PRE_START": "null", "POST_START": "null" }, { "IMAGE": "unclecode/crawl4ai:latest", "UPDATE": "true", "NAME": "openwebuicrawl4ai-app", "MEMORY": "1024M", "NETWORK": "openwebui-net", "SELECTOR": "openwebuicrawl4ai-app", "VOLUMES": [ { "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", "CMD": "null", "PRE_START": "null", "POST_START": "null" }, { "IMAGE": "ghcr.io/open-webui/open-webui:main", "UPDATE": "true", "NAME": "openwebuiapp", "MEMORY": "4096M", "NETWORK": "openwebui-net", "SELECTOR": "openwebui-app", "VOLUMES": [ { "SOURCE": "/etc/user/data/openwebui/data", "DEST": "/app/data", "TYPE": "rw" } ], "PORTS": [ { "SOURCE": "null", "DEST": "8080", "TYPE": "tcp" } ], "ENVS": [ { "ENABLE_PERSISTENT_CONFIG": "false" }, { "HF_HUB_OFFLINE": "#DISABLE_HUGGINGFACE" }, { "OPENAI_API_BASE_URL": "#OPENAI_API_BASE_URL" }, { "VECTOR_DB": "qdrant" }, { "QDRANT_URI": "http://openwebuiqdrant-app:6333" }, { "ENABLE_WEB_SEARCH": "#ENABLE_WEB_SEARCH" }, { "WEB_SEARCH_ENGINE": "#WEB_SEARCH_ENGINE" }, { "WEB_LOADER_ENGINE": "#WEB_LOADER_ENGINE" }, { "SEARXNG_QUERY_URL": "#SEARXNG_QUERY_URL" }, { "EXTERNAL_WEB_LOADER_URL": "#EXTERNAL_WEB_LOADER_URL" } ], "ENV_FILES": [ "/etc/user/secret/openwebui/openwebui.json" ], "EXTRA": "--restart always", "DEPEND": [], "START_ON_BOOT": "false", "CMD": "null", "PRE_START": "null", "POST_START": [ "firewall-openwebui", "domain-openwebui", "firewall-openwebui-dns" ] } ] }