searxngRebrandZaclys/docs/admin/installation.rst
Markus Heiser ecb7e73e03 [brand] docs - normalize project name to SearXNG
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2021-09-13 14:36:24 +02:00

3.2 KiB

Installation

You're spoilt for choice, choose your preferred method of installation.

  • installation docker
  • installation scripts
  • installation basic

The installation basic is good enough for intranet usage and it is a excellent illustration of how a SearXNG instance is build up. If you place your instance public to the internet you should really consider to install a filtron reverse proxy <filtron.sh> and for privacy a result proxy <morty.sh> is mandatory.

Therefore, if you do not have any special preferences, its recommend to use the installation docker or the Installation scripts from our tooling box <toolboxing> as described below.

Installation scripts

Update OS first!

To avoid unwanted side effects, update your OS before installing searx.

The following will install a setup as shown in architecture. First you need to get a clone. The clone is only needed for the installation procedure and some maintenance tasks (alternatively you can create your own fork).

For the installation procedure, use a sudoer login to run the scripts. If you install from root, take into account that the scripts are creating a searx, a filtron and a morty user. In the installation procedure these new created users do need read access to the clone of searx, which is not the case if you clone into a folder below /root.

$ cd ~/Downloads
$ git clone https://github.com/searxng/searxng.git searx
$ cd searx

further read

  • toolboxing
  • update searx
  • inspect searx

Install SearXNG service <searx.sh>

This installs SearXNG as described in installation basic.

$ sudo -H ./utils/searx.sh install all

Install filtron reverse proxy <filtron.sh>

$ sudo -H ./utils/filtron.sh install all

Install result proxy <morty.sh>

$ sudo -H ./utils/morty.sh install all

If all services are running fine, you can add it to your HTTP server:

Install HTTP

  • installation apache
  • installation nginx

Install external plugins <dev plugin>

Use SearXNG's shell to install external plugins. In the example below we install the SearXNG plugins from The Green Web Foundation [ref]:

$ sudo -H ./utils/searx.sh shell
// exit with [CTRL-D]
(searx-pyenv) searx@ryzen:~$ pip install git+https://github.com/return42/tgwf-searx-plugins

In the settings.yml activate the plugins: section and add module only_show_green_results from tgwf-searx-plugins.

plugins:
  - only_show_green_results

Tip

About script's installation options have a look at chapter toolboxing setup. How to brand your instance see chapter settings global. To stash your instance's setup, git stash your clone's .config.sh file .