summaryrefslogtreecommitdiff
path: root/docs/utils
diff options
context:
space:
mode:
Diffstat (limited to 'docs/utils')
-rw-r--r--docs/utils/filtron.sh.rst80
-rw-r--r--docs/utils/index.rst48
-rw-r--r--docs/utils/lxc.sh.rst52
-rw-r--r--docs/utils/morty.sh.rst80
-rw-r--r--docs/utils/searx.sh.rst39
-rw-r--r--docs/utils/searxng.sh.rst36
6 files changed, 74 insertions, 261 deletions
diff --git a/docs/utils/filtron.sh.rst b/docs/utils/filtron.sh.rst
deleted file mode 100644
index 1f7302392..000000000
--- a/docs/utils/filtron.sh.rst
+++ /dev/null
@@ -1,80 +0,0 @@
-
-.. _filtron.sh:
-
-====================
-``utils/filtron.sh``
-====================
-
-.. sidebar:: further reading
-
- - :ref:`searxng filtron`
- - :ref:`architecture`
- - :ref:`installation` (:ref:`nginx <installation nginx>` & :ref:`apache
- <installation apache>`)
-
-.. _Go: https://golang.org/
-.. _filtron: https://github.com/searxng/filtron
-.. _filtron README: https://github.com/searxng/filtron/blob/master/README.md
-
-To simplify installation and maintenance of a filtron instance you can use the
-script :origin:`utils/filtron.sh`. In most cases you will install filtron_
-simply by running the command:
-
-.. code:: bash
-
- sudo -H ./utils/filtron.sh install all
-
-The script adds a ``${SERVICE_USER}`` (default:``filtron``) and installs filtron_
-into this user account:
-
-#. Create a separated user account (``filtron``).
-#. Download and install Go_ binary in user's $HOME (``~filtron``).
-#. Install filtron with the package management from Go_ (``go get -v -u
- github.com/searxng/filtron``)
-#. Setup a proper rule configuration :origin:`[ref]
- <utils/templates/etc/filtron/rules.json>` (``/etc/filtron/rules.json``).
-#. Setup a systemd service unit :origin:`[ref]
- <utils/templates/lib/systemd/system/filtron.service>`
- (``/lib/systemd/system/filtron.service``).
-
-
-Create user
-===========
-
-.. kernel-include:: $DOCS_BUILD/includes/filtron.rst
- :start-after: START create user
- :end-before: END create user
-
-
-Install go
-==========
-
-.. kernel-include:: $DOCS_BUILD/includes/filtron.rst
- :start-after: START install go
- :end-before: END install go
-
-
-Install filtron
-===============
-
-Install :origin:`rules.json <utils/templates/etc/filtron/rules.json>` at
-``/etc/filtron/rules.json`` (see :ref:`Sample configuration of filtron`) and
-install filtron software and systemd unit:
-
-.. kernel-include:: $DOCS_BUILD/includes/filtron.rst
- :start-after: START install filtron
- :end-before: END install filtron
-
-.. kernel-include:: $DOCS_BUILD/includes/filtron.rst
- :start-after: START install systemd unit
- :end-before: END install systemd unit
-
-.. _filtron.sh overview:
-
-Overview
-========
-
-The ``--help`` output of the script is largely self-explanatory
-(:ref:`toolboxing common`):
-
-.. program-output:: ../utils/filtron.sh --help
diff --git a/docs/utils/index.rst b/docs/utils/index.rst
index 2077bbb13..2da26ed12 100644
--- a/docs/utils/index.rst
+++ b/docs/utils/index.rst
@@ -1,52 +1,30 @@
.. _searx_utils:
.. _toolboxing:
-===================
-Admin's tooling box
-===================
+==================
+DevOps tooling box
+==================
-In the folder :origin:`utils/` we maintain some tools useful for administrators.
+In the folder :origin:`utils/` we maintain some tools useful for administrators
+and developers.
.. toctree::
:maxdepth: 2
:caption: Contents
- searx.sh
- filtron.sh
- morty.sh
+ searxng.sh
lxc.sh
-.. _toolboxing common:
+Common command environments
+===========================
-Common commands & environment
-=============================
-
-Scripts to maintain services often dispose of common commands and environments.
-
-``shell`` : command
- Opens a shell from the service user ``${SERVICE_USSR}``, very helpful for
- troubleshooting.
-
-``inspect service`` : command
- Shows status and log of the service, most often you have a option to enable
- more verbose debug logs. Very helpful for debugging, but be careful not to
- enable debugging in a production environment!
+The scripts in our tooling box often dispose of common environments:
``FORCE_TIMEOUT`` : environment
Sets timeout for interactive prompts. If you want to run a script in batch
job, with defaults choices, set ``FORCE_TIMEOUT=0``. By example; to install a
- reverse proxy for filtron on all containers of the :ref:`SearXNG suite
- <lxc-searx.env>` use ::
-
- sudo -H ./utils/lxc.sh cmd -- FORCE_TIMEOUT=0 ./utils/filtron.sh apache install
-
-.. _toolboxing setup:
-
-Tooling box setup
-=================
-
-The main setup is done in the :origin:`.config.sh` (read also :ref:`settings
-global`).
+ SearXNG server and nginx proxy on all containers of the :ref:`SearXNG suite
+ <lxc-searxng.env>` use::
-.. literalinclude:: ../../.config.sh
- :language: bash
+ sudo -H ./utils/lxc.sh cmd -- FORCE_TIMEOUT=0 ./utils/searxng.sh install all
+ sudo -H ./utils/lxc.sh cmd -- FORCE_TIMEOUT=0 ./utils/searxng.sh install nginx
diff --git a/docs/utils/lxc.sh.rst b/docs/utils/lxc.sh.rst
index f09b033f4..4308a12cc 100644
--- a/docs/utils/lxc.sh.rst
+++ b/docs/utils/lxc.sh.rst
@@ -23,7 +23,7 @@
With the use of *Linux Containers* (LXC_) we can scale our tasks over a stack of
containers, what we call the: *lxc suite*. The *SearXNG suite*
-(:origin:`lxc-searx.env <utils/lxc-searx.env>`) is loaded by default, every time
+(:origin:`lxc-searxng.env <utils/lxc-searxng.env>`) is loaded by default, every time
you start the ``lxc.sh`` script (*you do not need to care about*).
Before you can start with containers, you need to install and initiate LXD_
@@ -49,7 +49,7 @@ help>`.
If you do not want to build all containers, **you can build just one**::
- $ sudo -H ./utils/lxc.sh build searx-ubu1804
+ $ sudo -H ./utils/lxc.sh build searxng-archlinux
*Good to know ...*
@@ -62,9 +62,9 @@ of::
In the containers, you can run what ever you want, e.g. to start a bash use::
- $ sudo -H ./utils/lxc.sh cmd searx-ubu1804 bash
- INFO: [searx-ubu1804] bash
- root@searx-ubu1804:/share/searx#
+ $ sudo -H ./utils/lxc.sh cmd searxng-archlinux bash
+ INFO: [searxng-archlinux] bash
+ [root@searxng-archlinux SearXNG]#
If there comes the time you want to **get rid off all** the containers and
**clean up local images** just type::
@@ -121,28 +121,26 @@ Install suite
=============
To install the complete :ref:`SearXNG suite (includes searx, morty & filtron)
-<lxc-searx.env>` into all LXC_ use::
+<lxc-searxng.env>` into all LXC_ use::
$ sudo -H ./utils/lxc.sh install suite
-The command above installs a SearXNG suite (see :ref:`installation scripts`). To
-get the IP (URL) of the filtron service in the containers use ``show suite``
+The command above installs a SearXNG suite (see :ref:`installation scripts`).
+To :ref:`install a nginx <installation nginx>` reverse proxy (or alternatively
+use :ref:`apache <installation apache>`)::
+
+ sudo -H ./utils/lxc.sh cmd -- FORCE_TIMEOUT=0 ./utils/searxng.sh install nginx
+
+To get the IP (URL) of the SearXNG service in the containers use ``show suite``
command. To test instances from containers just open the URLs in your
WEB-Browser::
- $ sudo ./utils/lxc.sh show suite | grep filtron
- [searx-ubu1604] INFO: (eth0) filtron: http://n.n.n.246:4004/ http://n.n.n.246/searx
- [searx-ubu1804] INFO: (eth0) filtron: http://n.n.n.147:4004/ http://n.n.n.147/searx
- [searx-ubu1910] INFO: (eth0) filtron: http://n.n.n.140:4004/ http://n.n.n.140/searx
- [searx-ubu2004] INFO: (eth0) filtron: http://n.n.n.18:4004/ http://n.n.n.18/searx
- [searx-fedora31] INFO: (eth0) filtron: http://n.n.n.46:4004/ http://n.n.n.46/searx
- [searx-archlinux] INFO: (eth0) filtron: http://n.n.n.32:4004/ http://n.n.n.32/searx
-
-To :ref:`install a nginx <installation nginx>` reverse proxy for filtron and
-morty use (or alternatively use :ref:`apache <installation apache>`)::
+ $ sudo ./utils/lxc.sh show suite | grep SEARXNG_URL
- sudo -H ./utils/lxc.sh cmd -- FORCE_TIMEOUT=0 ./utils/filtron.sh nginx install
- sudo -H ./utils/lxc.sh cmd -- FORCE_TIMEOUT=0 ./utils/morty.sh nginx install
+ [searxng-ubu2110] SEARXNG_URL : http://n.n.n.147/searxng
+ [searxng-ubu2004] SEARXNG_URL : http://n.n.n.246/searxng
+ [searxnggfedora35] SEARXNG_URL : http://n.n.n.140/searxng
+ [searxng-archlinux] SEARXNG_URL : http://n.n.n.165/searxng
Running commands
@@ -152,8 +150,8 @@ Running commands
:ref:`toolboxing`. By example: to setup a :ref:`buildhosts` and run the
Makefile target ``test`` in the archlinux_ container::
- sudo -H ./utils/lxc.sh cmd searx-archlinux ./utils/searx.sh install buildhost
- sudo -H ./utils/lxc.sh cmd searx-archlinux make test
+ sudo -H ./utils/lxc.sh cmd searxng-archlinux ./utils/searxng.sh install buildhost
+ sudo -H ./utils/lxc.sh cmd searxng-archlinux make test
Setup SearXNG buildhost
@@ -164,11 +162,11 @@ The installation procedure to set up a :ref:`build host<buildhosts>` takes its
time. Installation in all containers will take more time (time for another cup
of coffee).::
- sudo -H ./utils/lxc.sh cmd -- ./utils/searx.sh install buildhost
+ sudo -H ./utils/lxc.sh cmd -- ./utils/searxng.sh install buildhost
To build (live) documentation inside a archlinux_ container::
- sudo -H ./utils/lxc.sh cmd searx-archlinux make docs.clean docs.live
+ sudo -H ./utils/lxc.sh cmd searxng-archlinux make docs.clean docs.live
...
[I 200331 15:00:42 server:296] Serving on http://0.0.0.0:8080
@@ -176,7 +174,7 @@ To get IP of the container and the port number *live docs* is listening::
$ sudo ./utils/lxc.sh show suite | grep docs.live
...
- [searx-archlinux] INFO: (eth0) docs.live: http://n.n.n.12:8080/
+ [searxng-archlinux] INFO: (eth0) docs.live: http://n.n.n.12:8080/
.. _lxc.sh help:
@@ -189,10 +187,10 @@ The ``--help`` output of the script is largely self-explanatory:
.. program-output:: ../utils/lxc.sh --help
-.. _lxc-searx.env:
+.. _lxc-searxng.env:
SearXNG suite
=============
-.. literalinclude:: ../../utils/lxc-searx.env
+.. literalinclude:: ../../utils/lxc-searxng.env
:language: bash
diff --git a/docs/utils/morty.sh.rst b/docs/utils/morty.sh.rst
deleted file mode 100644
index 99103b1cb..000000000
--- a/docs/utils/morty.sh.rst
+++ /dev/null
@@ -1,80 +0,0 @@
-
-.. _morty: https://github.com/asciimoo/morty
-.. _morty's README: https://github.com/asciimoo/morty
-.. _Go: https://golang.org/
-
-.. _morty.sh:
-
-==================
-``utils/morty.sh``
-==================
-
-.. sidebar:: further reading
-
- - :ref:`architecture`
- - :ref:`installation` (:ref:`nginx <installation nginx>` & :ref:`apache
- <installation apache>`)
- - :ref:`searxng morty`
-
-To simplify installation and maintenance of a morty_ instance you can use the
-script :origin:`utils/morty.sh`. In most cases you will install morty_ simply by
-running the command:
-
-.. code:: bash
-
- sudo -H ./utils/morty.sh install all
-
-The script adds a ``${SERVICE_USER}`` (default:``morty``) and installs morty_
-into this user account:
-
-#. Create a separated user account (``morty``).
-#. Download and install Go_ binary in user's $HOME (``~morty``).
-#. Install morty_ with the package management from Go_ (``go get -v -u
- github.com/asciimoo/morty``)
-#. Setup a systemd service unit :origin:`[ref]
- <utils/templates/lib/systemd/system/morty.service>`
- (``/lib/systemd/system/morty.service``).
-
-.. hint::
-
- To add morty to your SearXNG instance read chapter :ref:`searxng morty`.
-
-Create user
-===========
-
-.. kernel-include:: $DOCS_BUILD/includes/morty.rst
- :start-after: START create user
- :end-before: END create user
-
-
-Install go
-==========
-
-.. kernel-include:: $DOCS_BUILD/includes/morty.rst
- :start-after: START install go
- :end-before: END install go
-
-
-Install morty
-=============
-
-Install morty software and systemd unit:
-
-.. kernel-include:: $DOCS_BUILD/includes/morty.rst
- :start-after: START install morty
- :end-before: END install morty
-
-.. kernel-include:: $DOCS_BUILD/includes/morty.rst
- :start-after: START install systemd unit
- :end-before: END install systemd unit
-
-.. _morty.sh overview:
-
-Overview
-========
-
-The ``--help`` output of the script is largely self-explanatory
-(:ref:`toolboxing common`):
-
-.. program-output:: ../utils/morty.sh --help
-
diff --git a/docs/utils/searx.sh.rst b/docs/utils/searx.sh.rst
deleted file mode 100644
index 6d412d23d..000000000
--- a/docs/utils/searx.sh.rst
+++ /dev/null
@@ -1,39 +0,0 @@
-
-.. _searx.sh:
-
-==================
-``utils/searx.sh``
-==================
-
-.. sidebar:: further reading
-
- - :ref:`architecture`
- - :ref:`installation`
- - :ref:`installation nginx`
- - :ref:`installation apache`
-
-To simplify installation and maintenance of a SearXNG instance you can use the
-script :origin:`utils/searx.sh`.
-
-Install
-=======
-
-In most cases you will install SearXNG simply by running the command:
-
-.. code:: bash
-
- sudo -H ./utils/searx.sh install all
-
-The script adds a ``${SERVICE_USER}`` (default:``searx``) and installs SearXNG
-into this user account. The installation is described in chapter
-:ref:`installation basic`.
-
-.. _intranet reverse proxy:
-
-Overview
-========
-
-The ``--help`` output of the script is largely self-explanatory
-(:ref:`toolboxing common`):
-
-.. program-output:: ../utils/searx.sh --help
diff --git a/docs/utils/searxng.sh.rst b/docs/utils/searxng.sh.rst
new file mode 100644
index 000000000..f6578f7b1
--- /dev/null
+++ b/docs/utils/searxng.sh.rst
@@ -0,0 +1,36 @@
+
+.. _searxng.sh:
+
+====================
+``utils/searxng.sh``
+====================
+
+.. sidebar:: further reading
+
+ - :ref:`architecture`
+ - :ref:`installation`
+ - :ref:`installation nginx`
+ - :ref:`installation apache`
+
+To simplify the installation and maintenance of a SearXNG instance you can use the
+script :origin:`utils/searxng.sh`.
+
+Install
+=======
+
+In most cases you will install SearXNG simply by running the command:
+
+.. code:: bash
+
+ sudo -H ./utils/searx.sh install all
+
+The installation is described in chapter :ref:`installation basic`.
+
+.. _searxng.sh overview:
+
+Overview
+========
+
+The ``--help`` output of the script is largely self-explanatory:
+
+.. program-output:: ../utils/searxng.sh --help