From 7be468d2134f545531906491425f006e647dcece Mon Sep 17 00:00:00 2001 From: holysoles Date: Fri, 14 Jun 2024 12:52:31 +0000 Subject: [PATCH] [feat] docker: add env vars for common public instance settings --- AUTHORS.rst | 1 + docs/admin/settings/settings_server.rst | 6 +++--- docs/admin/settings/settings_ui.rst | 2 +- searx/settings.yml | 11 ++++++++--- searx/settings_defaults.py | 8 ++++---- 5 files changed, 17 insertions(+), 11 deletions(-) diff --git a/AUTHORS.rst b/AUTHORS.rst index 011735b55..265a9fd41 100644 --- a/AUTHORS.rst +++ b/AUTHORS.rst @@ -173,3 +173,4 @@ features or generally made searx better: - Austin Olacsi `` - @micsthepick - Daniel Kukula `` +- Patrick Evans `https://github.com/holysoles` \ No newline at end of file diff --git a/docs/admin/settings/settings_server.rst b/docs/admin/settings/settings_server.rst index daba6d1dd..cf480683e 100644 --- a/docs/admin/settings/settings_server.rst +++ b/docs/admin/settings/settings_server.rst @@ -31,13 +31,13 @@ ``secret_key`` : ``$SEARXNG_SECRET`` Used for cryptography purpose. -``limiter`` : +``limiter`` : ``$SEARXNG_LIMITER`` Rate limit the number of request on the instance, block some bots. The :ref:`limiter` requires a :ref:`settings redis` database. .. _public_instance: -``public_instance`` : +``public_instance`` : ``$SEARXNG_PUBLIC_INSTANCE`` Setting that allows to enable features specifically for public instances (not needed for local usage). By set to ``true`` the following features are @@ -47,7 +47,7 @@ .. _image_proxy: -``image_proxy`` : +``image_proxy`` : ``$SEARXNG_IMAGE_PROXY`` Allow your instance of SearXNG of being able to proxy images. Uses memory space. .. _HTTP headers: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers diff --git a/docs/admin/settings/settings_ui.rst b/docs/admin/settings/settings_ui.rst index a5d1076ec..1a6df9a17 100644 --- a/docs/admin/settings/settings_ui.rst +++ b/docs/admin/settings/settings_ui.rst @@ -24,7 +24,7 @@ .. _static_use_hash: -``static_use_hash`` : +``static_use_hash`` : ``$SEARXNG_STATIC_USE_HASH`` Enables `cache busting`_ of static files. ``default_locale`` : diff --git a/searx/settings.yml b/searx/settings.yml index db749be77..d1e51031a 100644 --- a/searx/settings.yml +++ b/searx/settings.yml @@ -78,14 +78,18 @@ server: # public URL of the instance, to ensure correct inbound links. Is overwritten # by ${SEARXNG_URL}. base_url: false # "http://example.com/location" - limiter: false # rate limit the number of request on the instance, block some bots - public_instance: false # enable features designed only for public instances + # rate limit the number of request on the instance, block some bots. + # Is overwritten by ${SEARXNG_LIMITER} + limiter: false + # enable features designed only for public instances. + # Is overwritten by ${SEARXNG_PUBLIC_INSTANCE} + public_instance: false # If your instance owns a /etc/searxng/settings.yml file, then set the following # values there. secret_key: "ultrasecretkey" # Is overwritten by ${SEARXNG_SECRET} - # Proxying image results through searx + # Proxy image results through SearXNG. Is overwritten by ${SEARXNG_IMAGE_PROXY} image_proxy: false # 1.0 and 1.1 are supported http_protocol_version: "1.0" @@ -106,6 +110,7 @@ redis: ui: # Custom static path - leave it blank if you didn't change static_path: "" + # Is overwritten by ${SEARXNG_STATIC_USE_HASH}. static_use_hash: false # Custom templates path - leave it blank if you didn't change templates_path: "" diff --git a/searx/settings_defaults.py b/searx/settings_defaults.py index 93b04257c..6786a78c4 100644 --- a/searx/settings_defaults.py +++ b/searx/settings_defaults.py @@ -174,11 +174,11 @@ SCHEMA = { 'server': { 'port': SettingsValue((int, str), 8888, 'SEARXNG_PORT'), 'bind_address': SettingsValue(str, '127.0.0.1', 'SEARXNG_BIND_ADDRESS'), - 'limiter': SettingsValue(bool, False), - 'public_instance': SettingsValue(bool, False), + 'limiter': SettingsValue(bool, False, 'SEARXNG_LIMITER'), + 'public_instance': SettingsValue(bool, False, 'SEARXNG_PUBLIC_INSTANCE'), 'secret_key': SettingsValue(str, environ_name='SEARXNG_SECRET'), 'base_url': SettingsValue((False, str), False, 'SEARXNG_BASE_URL'), - 'image_proxy': SettingsValue(bool, False), + 'image_proxy': SettingsValue(bool, False, 'SEARXNG_IMAGE_PROXY'), 'http_protocol_version': SettingsValue(('1.0', '1.1'), '1.0'), 'method': SettingsValue(('POST', 'GET'), 'POST'), 'default_http_headers': SettingsValue(dict, {}), @@ -188,7 +188,7 @@ SCHEMA = { }, 'ui': { 'static_path': SettingsDirectoryValue(str, os.path.join(searx_dir, 'static')), - 'static_use_hash': SettingsValue(bool, False), + 'static_use_hash': SettingsValue(bool, False, 'SEARXNG_STATIC_USE_HASH'), 'templates_path': SettingsDirectoryValue(str, os.path.join(searx_dir, 'templates')), 'default_theme': SettingsValue(str, 'simple'), 'default_locale': SettingsValue(str, ''),