mirror of
https://github.com/searxng/searxng.git
synced 2026-05-07 18:03:51 +02:00
[mod] container: rework compose (#5906)
* [mod] container: rework compose See https://docs.searxng.org/admin/installation-docker.html#migrate-from-searxng-docker * [mod] container: apply suggestions https://github.com/searxng/searxng/pull/5906#discussion_r3004917087 https://github.com/searxng/searxng/pull/5906#discussion_r3004917090 https://github.com/searxng/searxng/pull/5906#discussion_r3004917084
This commit is contained in:
@@ -0,0 +1,15 @@
|
||||
# Read the documentation before using the `docker-compose.yml` file:
|
||||
# https://docs.searxng.org/admin/installation-docker.html
|
||||
#
|
||||
# Additional ENVs:
|
||||
# https://docs.searxng.org/admin/settings/settings_general.html#settings-general
|
||||
# https://docs.searxng.org/admin/settings/settings_server.html#settings-server
|
||||
|
||||
# Use a specific version tag. E.g. "latest" or "2026.3.25-541c6c3cb".
|
||||
#SEARXNG_VERSION=latest
|
||||
|
||||
# Listen to a specific address.
|
||||
#SEARXNG_HOST=[::]
|
||||
|
||||
# Listen to a specific port.
|
||||
#SEARXNG_PORT=8080
|
||||
+12
-12
@@ -15,17 +15,17 @@ ARG VCS_URL="unknown"
|
||||
ARG VCS_REVISION="unknown"
|
||||
|
||||
LABEL org.opencontainers.image.created="$CREATED" \
|
||||
org.opencontainers.image.description="SearXNG is a metasearch engine. Users are neither tracked nor profiled." \
|
||||
org.opencontainers.image.documentation="https://docs.searxng.org/admin/installation-docker" \
|
||||
org.opencontainers.image.licenses="AGPL-3.0-or-later" \
|
||||
org.opencontainers.image.revision="$VCS_REVISION" \
|
||||
org.opencontainers.image.source="$VCS_URL" \
|
||||
org.opencontainers.image.title="SearXNG" \
|
||||
org.opencontainers.image.url="https://searxng.org" \
|
||||
org.opencontainers.image.version="$VERSION"
|
||||
org.opencontainers.image.description="SearXNG is a metasearch engine. Users are neither tracked nor profiled." \
|
||||
org.opencontainers.image.documentation="https://docs.searxng.org/admin/installation-docker" \
|
||||
org.opencontainers.image.licenses="AGPL-3.0-or-later" \
|
||||
org.opencontainers.image.revision="$VCS_REVISION" \
|
||||
org.opencontainers.image.source="$VCS_URL" \
|
||||
org.opencontainers.image.title="SearXNG" \
|
||||
org.opencontainers.image.url="https://searxng.org" \
|
||||
org.opencontainers.image.version="$VERSION"
|
||||
|
||||
ENV SEARXNG_VERSION="$VERSION" \
|
||||
SEARXNG_SETTINGS_PATH="$CONFIG_PATH/settings.yml" \
|
||||
ENV __SEARXNG_VERSION="$VERSION" \
|
||||
__SEARXNG_SETTINGS_PATH="$__SEARXNG_CONFIG_PATH/settings.yml" \
|
||||
GRANIAN_PROCESS_NAME="searxng" \
|
||||
GRANIAN_INTERFACE="wsgi" \
|
||||
GRANIAN_HOST="::" \
|
||||
@@ -36,8 +36,8 @@ ENV SEARXNG_VERSION="$VERSION" \
|
||||
GRANIAN_BLOCKING_THREADS_IDLE_TIMEOUT="5m"
|
||||
|
||||
# "*_PATH" ENVs are defined in base images
|
||||
VOLUME $CONFIG_PATH
|
||||
VOLUME $DATA_PATH
|
||||
VOLUME $__SEARXNG_CONFIG_PATH
|
||||
VOLUME $__SEARXNG_DATA_PATH
|
||||
|
||||
EXPOSE 8080
|
||||
|
||||
|
||||
@@ -0,0 +1,28 @@
|
||||
# Read the documentation before using the `docker-compose.yml` file:
|
||||
# https://docs.searxng.org/admin/installation-docker.html
|
||||
|
||||
name: searxng
|
||||
|
||||
services:
|
||||
core:
|
||||
container_name: searxng-core
|
||||
image: docker.io/searxng/searxng:${SEARXNG_VERSION:-latest}
|
||||
restart: always
|
||||
ports:
|
||||
- ${SEARXNG_HOST:+${SEARXNG_HOST}:}${SEARXNG_PORT:-8080}:${SEARXNG_PORT:-8080}
|
||||
env_file: ./.env
|
||||
volumes:
|
||||
- ./core-config/:/etc/searxng/:Z
|
||||
- core-data:/var/cache/searxng/
|
||||
|
||||
valkey:
|
||||
container_name: searxng-valkey
|
||||
image: docker.io/valkey/valkey:9-alpine
|
||||
command: valkey-server --save 30 1 --loglevel warning
|
||||
restart: always
|
||||
volumes:
|
||||
- valkey-data:/data/
|
||||
|
||||
volumes:
|
||||
core-data:
|
||||
valkey-data:
|
||||
+11
-5
@@ -117,16 +117,22 @@ EOF
|
||||
}
|
||||
|
||||
cat <<EOF
|
||||
SearXNG $SEARXNG_VERSION
|
||||
SearXNG $__SEARXNG_VERSION
|
||||
EOF
|
||||
|
||||
# Check for volume mounts
|
||||
volume_handler "$CONFIG_PATH"
|
||||
volume_handler "$DATA_PATH"
|
||||
volume_handler "$__SEARXNG_CONFIG_PATH"
|
||||
volume_handler "$__SEARXNG_DATA_PATH"
|
||||
|
||||
# Check for files
|
||||
config_handler "$SEARXNG_SETTINGS_PATH" "/usr/local/searxng/searx/settings.yml"
|
||||
config_handler "$__SEARXNG_SETTINGS_PATH" "/usr/local/searxng/searx/settings.yml"
|
||||
|
||||
update-ca-certificates
|
||||
# root only features
|
||||
if [ "$(id -u)" -eq 0 ]; then
|
||||
update-ca-certificates
|
||||
fi
|
||||
|
||||
# ENVs aliases
|
||||
export GRANIAN_PORT="${SEARXNG_PORT:-$GRANIAN_PORT}"
|
||||
|
||||
exec /usr/local/searxng/.venv/bin/granian searx.webapp:app
|
||||
|
||||
Reference in New Issue
Block a user