forked from Ponysearch/Ponysearch
[brand] SearXNG - nginx & apache searxng.conf, uwsgi searxng.conf
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
This commit is contained in:
parent
a9fc4885f2
commit
2b1252148d
13 changed files with 55 additions and 55 deletions
|
@ -482,7 +482,7 @@ Restart service
|
||||||
.. code:: sh
|
.. code:: sh
|
||||||
|
|
||||||
sudo -H systemctl restart httpd
|
sudo -H systemctl restart httpd
|
||||||
sudo -H touch /etc/uwsgi.d/searx.ini
|
sudo -H touch /etc/uwsgi.d/searxng.ini
|
||||||
|
|
||||||
|
|
||||||
disable logs
|
disable logs
|
||||||
|
|
|
@ -146,12 +146,12 @@ Started wiki`_ is always a good resource *to keep in the pocket*.
|
||||||
|
|
||||||
.. group-tab:: Ubuntu / debian
|
.. group-tab:: Ubuntu / debian
|
||||||
|
|
||||||
Create configuration at ``/etc/nginx/sites-available/searx`` and place a
|
Create configuration at ``/etc/nginx/sites-available/searxng`` and place a
|
||||||
symlink to sites-enabled:
|
symlink to sites-enabled:
|
||||||
|
|
||||||
.. code:: sh
|
.. code:: sh
|
||||||
|
|
||||||
sudo -H ln -s /etc/nginx/sites-available/searx /etc/nginx/sites-enabled/searx
|
sudo -H ln -s /etc/nginx/sites-available/searxng /etc/nginx/sites-enabled/searxng
|
||||||
|
|
||||||
.. group-tab:: Arch Linux
|
.. group-tab:: Arch Linux
|
||||||
|
|
||||||
|
@ -160,7 +160,7 @@ Started wiki`_ is always a good resource *to keep in the pocket*.
|
||||||
|
|
||||||
.. group-tab:: Fedora / RHEL
|
.. group-tab:: Fedora / RHEL
|
||||||
|
|
||||||
Create configuration at ``/etc/nginx/conf.d/searx`` and place a
|
Create configuration at ``/etc/nginx/conf.d/searxng`` and place a
|
||||||
symlink to sites-enabled:
|
symlink to sites-enabled:
|
||||||
|
|
||||||
.. _nginx searx via filtron plus morty:
|
.. _nginx searx via filtron plus morty:
|
||||||
|
@ -365,7 +365,7 @@ Restart service:
|
||||||
.. code:: sh
|
.. code:: sh
|
||||||
|
|
||||||
sudo -H systemctl restart nginx
|
sudo -H systemctl restart nginx
|
||||||
sudo -H touch /etc/uwsgi.d/searx.ini
|
sudo -H touch /etc/uwsgi.d/searxng.ini
|
||||||
|
|
||||||
|
|
||||||
Disable logs
|
Disable logs
|
||||||
|
|
|
@ -35,10 +35,10 @@ recommend two methods
|
||||||
`systemd.unit`_ template files as described here `One service per app in systemd`_.
|
`systemd.unit`_ template files as described here `One service per app in systemd`_.
|
||||||
|
|
||||||
There is one `systemd unit template`_ and one `uwsgi ini file`_ per uWSGI-app
|
There is one `systemd unit template`_ and one `uwsgi ini file`_ per uWSGI-app
|
||||||
placed at dedicated locations. Take archlinux and a searx.ini as example::
|
placed at dedicated locations. Take archlinux and a searxng.ini as example::
|
||||||
|
|
||||||
unit template --> /usr/lib/systemd/system/uwsgi@.service
|
unit template --> /usr/lib/systemd/system/uwsgi@.service
|
||||||
uwsgi ini files --> /etc/uwsgi/searx.ini
|
uwsgi ini files --> /etc/uwsgi/searxng.ini
|
||||||
|
|
||||||
The SearXNG app can be maintained as know from common systemd units::
|
The SearXNG app can be maintained as know from common systemd units::
|
||||||
|
|
||||||
|
@ -54,12 +54,12 @@ The `uWSGI Emperor`_ mode which fits for maintaining a large range of uwsgi apps
|
||||||
systemd unit. The Emperor service will scan specific directories for `uwsgi
|
systemd unit. The Emperor service will scan specific directories for `uwsgi
|
||||||
ini file`_\s (also know as *vassals*). If a *vassal* is added, removed or the
|
ini file`_\s (also know as *vassals*). If a *vassal* is added, removed or the
|
||||||
timestamp is modified, a corresponding action takes place: a new uWSGI
|
timestamp is modified, a corresponding action takes place: a new uWSGI
|
||||||
instance is started, reload or stopped. Take Fedora and a searx.ini as
|
instance is started, reload or stopped. Take Fedora and a searxng.ini as
|
||||||
example::
|
example::
|
||||||
|
|
||||||
to start a new SearXNG instance create --> /etc/uwsgi.d/searx.ini
|
to start a new SearXNG instance create --> /etc/uwsgi.d/searxng.ini
|
||||||
to reload the instance edit timestamp --> touch /etc/uwsgi.d/searx.ini
|
to reload the instance edit timestamp --> touch /etc/uwsgi.d/searxng.ini
|
||||||
to stop instance remove ini --> rm /etc/uwsgi.d/searx.ini
|
to stop instance remove ini --> rm /etc/uwsgi.d/searxng.ini
|
||||||
|
|
||||||
Distributors
|
Distributors
|
||||||
============
|
============
|
||||||
|
@ -80,7 +80,7 @@ do similar for the uWSGI infrastructure (with less comfort), the folders are::
|
||||||
|
|
||||||
The `uwsgi ini file`_ is enabled by a symbolic link::
|
The `uwsgi ini file`_ is enabled by a symbolic link::
|
||||||
|
|
||||||
ln -s /etc/uwsgi/apps-available/searx.ini /etc/uwsgi/apps-enabled/
|
ln -s /etc/uwsgi/apps-available/searxng.ini /etc/uwsgi/apps-enabled/
|
||||||
|
|
||||||
From debian's documentation (``/usr/share/doc/uwsgi/README.Debian.gz``): You
|
From debian's documentation (``/usr/share/doc/uwsgi/README.Debian.gz``): You
|
||||||
could control specific instance(s) by issuing::
|
could control specific instance(s) by issuing::
|
||||||
|
|
|
@ -284,7 +284,7 @@ With the command above, we stopped the SearXNG uWSGI-App in the archlinux
|
||||||
container.
|
container.
|
||||||
|
|
||||||
The uWSGI-App for the archlinux dsitros is configured in
|
The uWSGI-App for the archlinux dsitros is configured in
|
||||||
:origin:`utils/templates/etc/uwsgi/apps-archlinux/searx.ini`, from where at
|
:origin:`utils/templates/etc/uwsgi/apps-archlinux/searxng.ini`, from where at
|
||||||
least you should attend the settings of ``uid``, ``chdir``, ``env`` and
|
least you should attend the settings of ``uid``, ``chdir``, ``env`` and
|
||||||
``http``::
|
``http``::
|
||||||
|
|
||||||
|
|
|
@ -46,8 +46,8 @@ GO_VERSION="go1.17.2"
|
||||||
GO_PKG_URL="https://golang.org/dl/${GO_VERSION}.linux-amd64.tar.gz"
|
GO_PKG_URL="https://golang.org/dl/${GO_VERSION}.linux-amd64.tar.gz"
|
||||||
GO_TAR=$(basename "$GO_PKG_URL")
|
GO_TAR=$(basename "$GO_PKG_URL")
|
||||||
|
|
||||||
APACHE_FILTRON_SITE="searx.conf"
|
APACHE_FILTRON_SITE="searxng.conf"
|
||||||
NGINX_FILTRON_SITE="searx.conf"
|
NGINX_FILTRON_SITE="searxng.conf"
|
||||||
|
|
||||||
# shellcheck disable=SC2034
|
# shellcheck disable=SC2034
|
||||||
CONFIG_FILES=(
|
CONFIG_FILES=(
|
||||||
|
|
|
@ -29,7 +29,7 @@ GIT_BRANCH="${GIT_BRANCH:-master}"
|
||||||
SEARX_PYENV="${SERVICE_HOME}/searx-pyenv"
|
SEARX_PYENV="${SERVICE_HOME}/searx-pyenv"
|
||||||
SEARX_SRC="${SERVICE_HOME}/searx-src"
|
SEARX_SRC="${SERVICE_HOME}/searx-src"
|
||||||
SEARXNG_SETTINGS_PATH="/etc/searxng/settings.yml"
|
SEARXNG_SETTINGS_PATH="/etc/searxng/settings.yml"
|
||||||
SEARX_UWSGI_APP="searx.ini"
|
SEARXNG_UWSGI_APP="searxng.ini"
|
||||||
# shellcheck disable=SC2034
|
# shellcheck disable=SC2034
|
||||||
SEARX_UWSGI_SOCKET="/run/uwsgi/app/searx/socket"
|
SEARX_UWSGI_SOCKET="/run/uwsgi/app/searx/socket"
|
||||||
|
|
||||||
|
@ -125,7 +125,7 @@ APACHE_SEARX_SITE="searx.conf"
|
||||||
|
|
||||||
# shellcheck disable=SC2034
|
# shellcheck disable=SC2034
|
||||||
CONFIG_FILES=(
|
CONFIG_FILES=(
|
||||||
"${uWSGI_APPS_AVAILABLE}/${SEARX_UWSGI_APP}"
|
"${uWSGI_APPS_AVAILABLE}/${SEARXNG_UWSGI_APP}"
|
||||||
)
|
)
|
||||||
|
|
||||||
# shellcheck disable=SC2034
|
# shellcheck disable=SC2034
|
||||||
|
@ -367,7 +367,7 @@ pip install -U pyyaml
|
||||||
pip install -U -e .
|
pip install -U -e .
|
||||||
EOF
|
EOF
|
||||||
install_settings
|
install_settings
|
||||||
uWSGI_restart "$SEARX_UWSGI_APP"
|
uWSGI_restart "$SEARXNG_UWSGI_APP"
|
||||||
}
|
}
|
||||||
|
|
||||||
remove_all() {
|
remove_all() {
|
||||||
|
@ -729,30 +729,30 @@ EOF
|
||||||
}
|
}
|
||||||
|
|
||||||
install_searx_uwsgi() {
|
install_searx_uwsgi() {
|
||||||
rst_title "Install SearXNG's uWSGI app (searx.ini)" section
|
rst_title "Install SearXNG's uWSGI app (searxng.ini)" section
|
||||||
echo
|
echo
|
||||||
install_uwsgi
|
install_uwsgi
|
||||||
uWSGI_install_app "$SEARX_UWSGI_APP"
|
uWSGI_install_app "$SEARXNG_UWSGI_APP"
|
||||||
}
|
}
|
||||||
|
|
||||||
remove_searx_uwsgi() {
|
remove_searx_uwsgi() {
|
||||||
rst_title "Remove SearXNG's uWSGI app (searx.ini)" section
|
rst_title "Remove SearXNG's uWSGI app (searxng.ini)" section
|
||||||
echo
|
echo
|
||||||
uWSGI_remove_app "$SEARX_UWSGI_APP"
|
uWSGI_remove_app "$SEARXNG_UWSGI_APP"
|
||||||
}
|
}
|
||||||
|
|
||||||
activate_service() {
|
activate_service() {
|
||||||
rst_title "Activate SearXNG (service)" section
|
rst_title "Activate SearXNG (service)" section
|
||||||
echo
|
echo
|
||||||
uWSGI_enable_app "$SEARX_UWSGI_APP"
|
uWSGI_enable_app "$SEARXNG_UWSGI_APP"
|
||||||
uWSGI_restart "$SEARX_UWSGI_APP"
|
uWSGI_restart "$SEARXNG_UWSGI_APP"
|
||||||
}
|
}
|
||||||
|
|
||||||
deactivate_service() {
|
deactivate_service() {
|
||||||
rst_title "De-Activate SearXNG (service)" section
|
rst_title "De-Activate SearXNG (service)" section
|
||||||
echo
|
echo
|
||||||
uWSGI_disable_app "$SEARX_UWSGI_APP"
|
uWSGI_disable_app "$SEARXNG_UWSGI_APP"
|
||||||
uWSGI_restart "$SEARX_UWSGI_APP"
|
uWSGI_restart "$SEARXNG_UWSGI_APP"
|
||||||
}
|
}
|
||||||
|
|
||||||
enable_image_proxy() {
|
enable_image_proxy() {
|
||||||
|
@ -761,7 +761,7 @@ enable_image_proxy() {
|
||||||
cd ${SEARX_SRC}
|
cd ${SEARX_SRC}
|
||||||
sed -i -e "s/image_proxy: false/image_proxy: true/g" "$SEARXNG_SETTINGS_PATH"
|
sed -i -e "s/image_proxy: false/image_proxy: true/g" "$SEARXNG_SETTINGS_PATH"
|
||||||
EOF
|
EOF
|
||||||
uWSGI_restart "$SEARX_UWSGI_APP"
|
uWSGI_restart "$SEARXNG_UWSGI_APP"
|
||||||
}
|
}
|
||||||
|
|
||||||
disable_image_proxy() {
|
disable_image_proxy() {
|
||||||
|
@ -770,7 +770,7 @@ disable_image_proxy() {
|
||||||
cd ${SEARX_SRC}
|
cd ${SEARX_SRC}
|
||||||
sed -i -e "s/image_proxy: true/image_proxy: false/g" "$SEARXNG_SETTINGS_PATH"
|
sed -i -e "s/image_proxy: true/image_proxy: false/g" "$SEARXNG_SETTINGS_PATH"
|
||||||
EOF
|
EOF
|
||||||
uWSGI_restart "$SEARX_UWSGI_APP"
|
uWSGI_restart "$SEARXNG_UWSGI_APP"
|
||||||
}
|
}
|
||||||
|
|
||||||
enable_debug() {
|
enable_debug() {
|
||||||
|
@ -780,7 +780,7 @@ enable_debug() {
|
||||||
cd ${SEARX_SRC}
|
cd ${SEARX_SRC}
|
||||||
sed -i -e "s/debug: false/debug: true/g" "$SEARXNG_SETTINGS_PATH"
|
sed -i -e "s/debug: false/debug: true/g" "$SEARXNG_SETTINGS_PATH"
|
||||||
EOF
|
EOF
|
||||||
uWSGI_restart "$SEARX_UWSGI_APP"
|
uWSGI_restart "$SEARXNG_UWSGI_APP"
|
||||||
}
|
}
|
||||||
|
|
||||||
disable_debug() {
|
disable_debug() {
|
||||||
|
@ -789,7 +789,7 @@ disable_debug() {
|
||||||
cd ${SEARX_SRC}
|
cd ${SEARX_SRC}
|
||||||
sed -i -e "s/debug: true/debug: false/g" "$SEARXNG_SETTINGS_PATH"
|
sed -i -e "s/debug: true/debug: false/g" "$SEARXNG_SETTINGS_PATH"
|
||||||
EOF
|
EOF
|
||||||
uWSGI_restart "$SEARX_UWSGI_APP"
|
uWSGI_restart "$SEARXNG_UWSGI_APP"
|
||||||
}
|
}
|
||||||
|
|
||||||
set_result_proxy() {
|
set_result_proxy() {
|
||||||
|
@ -869,14 +869,14 @@ EOF
|
||||||
err_msg "~$SERVICE_USER: Missing SearXNG software!"
|
err_msg "~$SERVICE_USER: Missing SearXNG software!"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if uWSGI_app_enabled "$SEARX_UWSGI_APP"; then
|
if uWSGI_app_enabled "$SEARXNG_UWSGI_APP"; then
|
||||||
info_msg "uWSGI app $SEARX_UWSGI_APP is enabled."
|
info_msg "uWSGI app $SEARXNG_UWSGI_APP is enabled."
|
||||||
else
|
else
|
||||||
err_msg "uWSGI app $SEARX_UWSGI_APP not enabled!"
|
err_msg "uWSGI app $SEARXNG_UWSGI_APP not enabled!"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
uWSGI_app_available "$SEARX_UWSGI_APP" \
|
uWSGI_app_available "$SEARXNG_UWSGI_APP" \
|
||||||
|| err_msg "uWSGI app $SEARX_UWSGI_APP not available!"
|
|| err_msg "uWSGI app $SEARXNG_UWSGI_APP not available!"
|
||||||
|
|
||||||
if in_container; then
|
if in_container; then
|
||||||
lxc_suite_info
|
lxc_suite_info
|
||||||
|
@ -955,9 +955,9 @@ excessively bot queries."
|
||||||
|
|
||||||
apache_install_site --variant=uwsgi "${APACHE_SEARX_SITE}"
|
apache_install_site --variant=uwsgi "${APACHE_SEARX_SITE}"
|
||||||
|
|
||||||
rst_title "Install SearXNG's uWSGI app (searx.ini)" section
|
rst_title "Install SearXNG's uWSGI app (searxng.ini)" section
|
||||||
echo
|
echo
|
||||||
uWSGI_install_app --variant=socket "$SEARX_UWSGI_APP"
|
uWSGI_install_app --variant=socket "$SEARXNG_UWSGI_APP"
|
||||||
|
|
||||||
if ! service_is_available "${PUBLIC_URL}"; then
|
if ! service_is_available "${PUBLIC_URL}"; then
|
||||||
err_msg "Public service at ${PUBLIC_URL} is not available!"
|
err_msg "Public service at ${PUBLIC_URL} is not available!"
|
||||||
|
@ -979,9 +979,9 @@ This removes apache site ${APACHE_SEARX_SITE}."
|
||||||
|
|
||||||
apache_remove_site "${APACHE_SEARX_SITE}"
|
apache_remove_site "${APACHE_SEARX_SITE}"
|
||||||
|
|
||||||
rst_title "Remove SearXNG's uWSGI app (searx.ini)" section
|
rst_title "Remove SearXNG's uWSGI app (searxng.ini)" section
|
||||||
echo
|
echo
|
||||||
uWSGI_remove_app "$SEARX_UWSGI_APP"
|
uWSGI_remove_app "$SEARXNG_UWSGI_APP"
|
||||||
}
|
}
|
||||||
|
|
||||||
rst-doc() {
|
rst-doc() {
|
||||||
|
@ -1025,12 +1025,12 @@ rst-doc() {
|
||||||
# For uWSGI debian uses the LSB init process, this might be changed
|
# For uWSGI debian uses the LSB init process, this might be changed
|
||||||
# one day, see https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=833067
|
# one day, see https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=833067
|
||||||
|
|
||||||
create ${uWSGI_APPS_AVAILABLE}/${SEARX_UWSGI_APP}
|
create ${uWSGI_APPS_AVAILABLE}/${SEARXNG_UWSGI_APP}
|
||||||
enable: sudo -H ln -s ${uWSGI_APPS_AVAILABLE}/${SEARX_UWSGI_APP} ${uWSGI_APPS_ENABLED}/
|
enable: sudo -H ln -s ${uWSGI_APPS_AVAILABLE}/${SEARXNG_UWSGI_APP} ${uWSGI_APPS_ENABLED}/
|
||||||
start: sudo -H service uwsgi start ${SEARX_UWSGI_APP%.*}
|
start: sudo -H service uwsgi start ${SEARXNG_UWSGI_APP%.*}
|
||||||
restart: sudo -H service uwsgi restart ${SEARX_UWSGI_APP%.*}
|
restart: sudo -H service uwsgi restart ${SEARXNG_UWSGI_APP%.*}
|
||||||
stop: sudo -H service uwsgi stop ${SEARX_UWSGI_APP%.*}
|
stop: sudo -H service uwsgi stop ${SEARXNG_UWSGI_APP%.*}
|
||||||
disable: sudo -H rm ${uWSGI_APPS_ENABLED}/${SEARX_UWSGI_APP}
|
disable: sudo -H rm ${uWSGI_APPS_ENABLED}/${SEARXNG_UWSGI_APP}
|
||||||
|
|
||||||
EOF
|
EOF
|
||||||
;;
|
;;
|
||||||
|
@ -1043,12 +1043,12 @@ EOF
|
||||||
# - http://0pointer.de/blog/projects/instances.html
|
# - http://0pointer.de/blog/projects/instances.html
|
||||||
# - https://uwsgi-docs.readthedocs.io/en/latest/Systemd.html#one-service-per-app-in-systemd
|
# - https://uwsgi-docs.readthedocs.io/en/latest/Systemd.html#one-service-per-app-in-systemd
|
||||||
|
|
||||||
create: ${uWSGI_APPS_ENABLED}/${SEARX_UWSGI_APP}
|
create: ${uWSGI_APPS_ENABLED}/${SEARXNG_UWSGI_APP}
|
||||||
enable: sudo -H systemctl enable uwsgi@${SEARX_UWSGI_APP%.*}
|
enable: sudo -H systemctl enable uwsgi@${SEARXNG_UWSGI_APP%.*}
|
||||||
start: sudo -H systemctl start uwsgi@${SEARX_UWSGI_APP%.*}
|
start: sudo -H systemctl start uwsgi@${SEARXNG_UWSGI_APP%.*}
|
||||||
restart: sudo -H systemctl restart uwsgi@${SEARX_UWSGI_APP%.*}
|
restart: sudo -H systemctl restart uwsgi@${SEARXNG_UWSGI_APP%.*}
|
||||||
stop: sudo -H systemctl stop uwsgi@${SEARX_UWSGI_APP%.*}
|
stop: sudo -H systemctl stop uwsgi@${SEARXNG_UWSGI_APP%.*}
|
||||||
disable: sudo -H systemctl disable uwsgi@${SEARX_UWSGI_APP%.*}
|
disable: sudo -H systemctl disable uwsgi@${SEARXNG_UWSGI_APP%.*}
|
||||||
|
|
||||||
EOF
|
EOF
|
||||||
;;
|
;;
|
||||||
|
@ -1060,9 +1060,9 @@ EOF
|
||||||
# The unit file starts uWSGI in emperor mode (/etc/uwsgi.ini), see
|
# The unit file starts uWSGI in emperor mode (/etc/uwsgi.ini), see
|
||||||
# - https://uwsgi-docs.readthedocs.io/en/latest/Emperor.html
|
# - https://uwsgi-docs.readthedocs.io/en/latest/Emperor.html
|
||||||
|
|
||||||
create: ${uWSGI_APPS_ENABLED}/${SEARX_UWSGI_APP}
|
create: ${uWSGI_APPS_ENABLED}/${SEARXNG_UWSGI_APP}
|
||||||
restart: sudo -H touch ${uWSGI_APPS_ENABLED}/${SEARX_UWSGI_APP}
|
restart: sudo -H touch ${uWSGI_APPS_ENABLED}/${SEARXNG_UWSGI_APP}
|
||||||
disable: sudo -H rm ${uWSGI_APPS_ENABLED}/${SEARX_UWSGI_APP}
|
disable: sudo -H rm ${uWSGI_APPS_ENABLED}/${SEARXNG_UWSGI_APP}
|
||||||
|
|
||||||
EOF
|
EOF
|
||||||
;;
|
;;
|
||||||
|
@ -1072,7 +1072,7 @@ EOF
|
||||||
echo -e "\n.. START searx uwsgi-appini $DIST_NAME"
|
echo -e "\n.. START searx uwsgi-appini $DIST_NAME"
|
||||||
echo ".. code:: bash"
|
echo ".. code:: bash"
|
||||||
echo
|
echo
|
||||||
eval "echo \"$(< "${TEMPLATES}/${uWSGI_APPS_AVAILABLE}/${SEARX_UWSGI_APP}")\"" | prefix_stdout " "
|
eval "echo \"$(< "${TEMPLATES}/${uWSGI_APPS_AVAILABLE}/${SEARXNG_UWSGI_APP}")\"" | prefix_stdout " "
|
||||||
echo -e "\n.. END searx uwsgi-appini $DIST_NAME"
|
echo -e "\n.. END searx uwsgi-appini $DIST_NAME"
|
||||||
|
|
||||||
)
|
)
|
||||||
|
|
Loading…
Reference in a new issue