diff options
| author | Markus Heiser <markus.heiser@darmarit.de> | 2023-06-30 18:07:02 +0200 |
|---|---|---|
| committer | Markus Heiser <markus.heiser@darmarIT.de> | 2023-07-01 22:45:19 +0200 |
| commit | 5720844fcdc8601798e10544e2fd25ce4f2ad099 (patch) | |
| tree | af611e4aef436253f4fda9504d06e05e2621114d /docs/dev/engines/offline/nosql-engines.rst | |
| parent | 8e8d8dabe9b17c9db8db7432c6bc063d9ae980d1 (diff) | |
[doc] rearranges Settings & Engines docs for better readability
We have built up detailed documentation of the *settings* and the *engines* over
the past few years. However, this documentation was still spread over various
chapters and was difficult to navigate in its entirety.
This patch rearranges the Settings & Engines documentation for better
readability.
To review new ordered docs::
make docs.clean docs.live
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
Diffstat (limited to 'docs/dev/engines/offline/nosql-engines.rst')
| -rw-r--r-- | docs/dev/engines/offline/nosql-engines.rst | 97 |
1 files changed, 97 insertions, 0 deletions
diff --git a/docs/dev/engines/offline/nosql-engines.rst b/docs/dev/engines/offline/nosql-engines.rst new file mode 100644 index 000000000..76f5cfb61 --- /dev/null +++ b/docs/dev/engines/offline/nosql-engines.rst @@ -0,0 +1,97 @@ +.. _nosql engines: + +=============== +NoSQL databases +=============== + +.. sidebar:: further read + + - `NoSQL databases <https://en.wikipedia.org/wiki/NoSQL>`_ + - `redis.io <https://redis.io/>`_ + - `MongoDB <https://www.mongodb.com>`_ + +.. contents:: + :depth: 2 + :local: + :backlinks: entry + +.. sidebar:: info + + Initial sponsored by `Search and Discovery Fund + <https://nlnet.nl/discovery>`_ of `NLnet Foundation <https://nlnet.nl/>`_. + +The following `NoSQL databases`_ are supported: + +- :ref:`engine redis_server` +- :ref:`engine mongodb` + +All of the engines above are just commented out in the :origin:`settings.yml +<searx/settings.yml>`, as you have to set various options and install +dependencies before using them. + +By default, the engines use the ``key-value`` template for displaying results / +see :origin:`simple <searx/templates/simple/result_templates/key-value.html>` +theme. If you are not satisfied with the original result layout, you can use +your own template, set ``result_template`` attribute to ``{template_name}`` and +place the templates at:: + + searx/templates/{theme_name}/result_templates/{template_name} + +Furthermore, if you do not wish to expose these engines on a public instance, you +can still add them and limit the access by setting ``tokens`` as described in +section :ref:`private engines`. + + +Extra Dependencies +================== + +For using :ref:`engine redis_server` or :ref:`engine mongodb` you need to +install additional packages in Python's Virtual Environment of your SearXNG +instance. To switch into the environment (:ref:`searxng-src`) you can use +:ref:`searxng.sh`:: + + $ sudo utils/searxng.sh instance cmd bash + (searxng-pyenv)$ pip install ... + + +Configure the engines +===================== + +`NoSQL databases`_ are used for storing arbitrary data without first defining +their structure. + + +.. _engine redis_server: + +Redis Server +------------ + +.. _redis: https://github.com/andymccurdy/redis-py#installation + +.. sidebar:: info + + - ``pip install`` redis_ + - redis.io_ + - :origin:`redis_server.py <searx/engines/redis_server.py>` + +.. automodule:: searx.engines.redis_server + :members: + + +.. _engine mongodb: + +MongoDB +------- + +.. _pymongo: https://github.com/mongodb/mongo-python-driver#installation + +.. sidebar:: info + + - ``pip install`` pymongo_ + - MongoDB_ + - :origin:`mongodb.py <searx/engines/mongodb.py>` + + +.. automodule:: searx.engines.mongodb + :members: + |