SearXNG doesn’t have valkey database in docker-compose on Runtipi App Store

Can you add valkey database into SearXNG docker-compose in Runtipi App Store. It is required in order for “public_instance: true” line in settings.yml file to work. Here’s an example from official docker-compose by SearXNG Team. https://github.com/searxng/searxng-docker/blob/master/docker-compose.yaml
GitHub
searxng-docker/docker-compose.yaml at master · searxng/searxng-docker
The docker-compose files for setting up a SearXNG instance with docker. - searxng/searxng-docker
3 Replies
InfBoumcyCastle
InfBoumcyCastle2mo ago
you could use the version from my appstore https://codeberg.org/falkheiland/runtipi-appstore
Codeberg.org
runtipi-appstore
Custom Tipi App Store
ABOhiccups
ABOhiccupsOP2mo ago
"searxng/data/settings.yml" is not doing anything. In "searxng/searxng/settings.yml" If I enable public_instance. It gives me Bad Gateway page. @Falk Try change from "${APP_DATA_DIR}/searxng" to "${APP_DATA_DIR}/data". So it should work perfect. I have to manually move settings.yml from data folder to searxng folder to make everything work.
{
"$schema": "https://raw.githubusercontent.com/runtipi/runtipi-appstore/refs/heads/master/apps/dynamic-compose-schema.json",
"services": [
{
"name": "searxng",
"image": "docker.io/searxng/searxng:latest",
"internalPort": 8080,
"isMain": true,
"volumes": [
{
"hostPath": "${APP_DATA_DIR}/data",
"containerPath": "/etc/searxng"
}
],
"environment": {
"SEARXNG_SECRET": "${SEARXNG_SECRET_KEY}",
"SEARXNG_BASE_URL": "${APP_PROTOCOL:-http}://${APP_DOMAIN}/",
"UWSGI_WORKERS": "4",
"UWSGI_THREADS": "4"
}
},
{
"name": "searxng-redis",
"image": "docker.io/valkey/valkey:8-alpine",
"command": "valkey-server --save 30 1 --loglevel warning",
"volumes": [
{
"hostPath": "${APP_DATA_DIR}/searxng-redis",
"containerPath": "/data"
}
]
}
]
}
{
"$schema": "https://raw.githubusercontent.com/runtipi/runtipi-appstore/refs/heads/master/apps/dynamic-compose-schema.json",
"services": [
{
"name": "searxng",
"image": "docker.io/searxng/searxng:latest",
"internalPort": 8080,
"isMain": true,
"volumes": [
{
"hostPath": "${APP_DATA_DIR}/data",
"containerPath": "/etc/searxng"
}
],
"environment": {
"SEARXNG_SECRET": "${SEARXNG_SECRET_KEY}",
"SEARXNG_BASE_URL": "${APP_PROTOCOL:-http}://${APP_DOMAIN}/",
"UWSGI_WORKERS": "4",
"UWSGI_THREADS": "4"
}
},
{
"name": "searxng-redis",
"image": "docker.io/valkey/valkey:8-alpine",
"command": "valkey-server --save 30 1 --loglevel warning",
"volumes": [
{
"hostPath": "${APP_DATA_DIR}/searxng-redis",
"containerPath": "/data"
}
]
}
]
}
@Nicolas @Stavros I modify searxng (to make public_instance to work) for you to update in official App Store repro. docker-compose.json
{
"services": [
{
"name": "searxng",
"image": "searxng/searxng:latest",
"isMain": true,
"internalPort": 8080,
"environment": [
{
"key": "BASE_URL",
"value": "${APP_PROTOCOL:-http}://${APP_DOMAIN}/"
},
{
"key": "SEARXNG_SECRET",
"value": "${SEARXNG_SECRET_KEY}"
}
],
"volumes": [
{
"hostPath": "${APP_DATA_DIR}/data",
"containerPath": "/etc/searxng"
}
]
},
{
"name": "searxng-redis",
"image": "valkey/valkey:8-alpine",
"command": "valkey-server --save 30 1 --loglevel warning",
"volumes": [
{
"hostPath": "${APP_DATA_DIR}/searxng-redis",
"containerPath": "/data"
}
]
}
],
"schemaVersion": 2,
"$schema": "https://schemas.runtipi.io/v2/dynamic-compose.json"
}
{
"services": [
{
"name": "searxng",
"image": "searxng/searxng:latest",
"isMain": true,
"internalPort": 8080,
"environment": [
{
"key": "BASE_URL",
"value": "${APP_PROTOCOL:-http}://${APP_DOMAIN}/"
},
{
"key": "SEARXNG_SECRET",
"value": "${SEARXNG_SECRET_KEY}"
}
],
"volumes": [
{
"hostPath": "${APP_DATA_DIR}/data",
"containerPath": "/etc/searxng"
}
]
},
{
"name": "searxng-redis",
"image": "valkey/valkey:8-alpine",
"command": "valkey-server --save 30 1 --loglevel warning",
"volumes": [
{
"hostPath": "${APP_DATA_DIR}/searxng-redis",
"containerPath": "/data"
}
]
}
],
"schemaVersion": 2,
"$schema": "https://schemas.runtipi.io/v2/dynamic-compose.json"
}
data/settings.yml
# see https://docs.searxng.org/admin/settings/settings.html#settings-use-default-settings
use_default_settings: true
server:
secret_key: "{{SEARXNG_SECRET_KEY}}"
limiter: false # enable this when running the instance for a public usage on the internet
public_instance: false # enable this when making instance available to the public
image_proxy: true
redis:
url: redis://searxng-redis:6379/0
# see https://docs.searxng.org/admin/settings/settings.html#settings-use-default-settings
use_default_settings: true
server:
secret_key: "{{SEARXNG_SECRET_KEY}}"
limiter: false # enable this when running the instance for a public usage on the internet
public_instance: false # enable this when making instance available to the public
image_proxy: true
redis:
url: redis://searxng-redis:6379/0
InfBoumcyCastle
InfBoumcyCastle2mo ago
Will have a look at it in the coming days. fixed it and adjusted for the latest json scheme

Did you find this page helpful?