summaryrefslogtreecommitdiff
path: root/dockerfiles
diff options
context:
space:
mode:
authorDalf <alex@al-f.net>2020-07-22 14:58:04 +0200
committerDalf <alex@al-f.net>2020-07-22 14:58:04 +0200
commit4a35975b427b3ebee4f5cc54e2390356b0102536 (patch)
tree6bd79a0f0b40ebba1c7ff6d4fcd6529df7e52ac7 /dockerfiles
parent7ef62c628424718f10b88a5850f7b4e92b2f7196 (diff)
[enh] update documentation about docker
Diffstat (limited to 'dockerfiles')
-rwxr-xr-xdockerfiles/docker-entrypoint.sh50
1 files changed, 31 insertions, 19 deletions
diff --git a/dockerfiles/docker-entrypoint.sh b/dockerfiles/docker-entrypoint.sh
index 8b4c3486..221a204a 100755
--- a/dockerfiles/docker-entrypoint.sh
+++ b/dockerfiles/docker-entrypoint.sh
@@ -1,15 +1,39 @@
#!/bin/sh
-export SEARX_VERSION=$(su searx -c 'python3 -c "import six; import searx.version; six.print_(searx.version.VERSION_STRING)"')
-printf 'searx version %s\n\n' "${SEARX_VERSION}"
-
-export UWSGI_SETTINGS_PATH=/etc/searx/uwsgi.ini
-export SEARX_SETTINGS_PATH=/etc/searx/settings.yml
+help() {
+ printf "Command line:\n\n"
+ printf " -h Display this help\n"
+ printf " -d Dry run to update the configuration files.\n"
+ printf " -f Always update on the configuration files (existing files are renamed with the .old suffix)\n"
+ printf " Without this option, the new configuration files are copied with the .new suffix\n"
+ printf "\nEnvironment variables:\n\n"
+ printf " INSTANCE_NAME settings.yml : general.instance_name\n"
+ printf " AUTOCOMPLETE settings.yml : search.autocomplete\n"
+ printf " BASE_URL settings.yml : server.base_url\n"
+ printf " MORTY_URL settings.yml : result_proxy.url\n"
+ printf " MORTY_KEY settings.yml : result_proxy.key\n"
+ printf " BIND_ADDRESS uwsgi bind to the specified TCP socket using HTTP protocol. Default value: \"${DEFAULT_BIND_ADDRESS}\"\n"
+ printf "\nVolume:\n\n"
+ printf " /etc/searx the docker entry point copies settings.yml and uwsgi.ini in this directory (see the -f command line option)\n"
+ exit 0
+}
+export DEFAULT_BIND_ADDRESS="0.0.0.0:8080"
if [ -z "${BIND_ADDRESS}" ]; then
- export BIND_ADDRESS=":8080"
+ export BIND_ADDRESS="${DEFAULT_BIND_ADDRESS}"
fi
+export SEARX_VERSION=$(su searx -c 'python3 -c "import six; import searx.version; six.print_(searx.version.VERSION_STRING)"' 2>/dev/null)
+if [ -z "${SEARX_VERSION}" ]; then
+ # outside docker, display help
+ help
+else
+ printf 'searx version %s\n\n' "${SEARX_VERSION}"
+fi
+
+export UWSGI_SETTINGS_PATH=/etc/searx/uwsgi.ini
+export SEARX_SETTINGS_PATH=/etc/searx/settings.yml
+
# Parse command line
FORCE_CONF_UPDATE=0
DRY_RUN=0
@@ -23,19 +47,7 @@ do
DRY_RUN=1
;;
h)
- printf "Command line:\n\n"
- printf " -h Display this help\n"
- printf " -d Dry run to update the configuration files.\n"
- printf " -f Always update on the configuration files (existing files are renamed with the .old suffix)\n"
- printf " Without this option, new configuration files are copied with the .new suffix\n"
- printf "\nEnvironment variables:\n\n"
- printf " INSTANCE_NAME settings.yml : general.instance_name\n"
- printf " AUTOCOMPLETE settings.yml : search.autocomplete\n"
- printf " BASE_URL settings.yml : server.base_url\n"
- printf " MORTY_URL settings.yml : result_proxy.url\n"
- printf " MORTY_KEY settings.yml : result_proxy.key\n"
- printf " BIND_ADDRESS where uwsgi will accept HTTP request (format : host:port)\n"
- exit 0
+ help
esac
done