Solidstack Service

Solidstack is the single-container WDS server. It exposes the Dapi API, Swagger, and MCP surfaces while running Crawler, Datakeeper, Idealer, Jober, Scraper, and Retriever implementations in process. This lowers the footprint for evaluation and small workloads but does not provide the independent scaling or fault isolation of a multi-service deployment.

Release images:

Note: The regular service image is multi-platform. The -fips service image is built only for linux/amd64.

All-in-one image variants

Solidstack is also published in three all-in-one variants. They contain the same WDS application surfaces but differ in the supporting services included in the container.

Image Included services and defaults When to use it
webdatasource/solidstack-aio:v3.0.0 Solidstack and Docker Official MongoDB Image. A local MongoDB connection is configured automatically. Run the application and its database in one container when Retrieval and MongoDB Search are not required.
webdatasource/solidstack-aio-fts:v3.0.0 Solidstack and MongoDB Atlas Local. Retrieval is enabled and SEARCH_MODE defaults to FullText. Use the Retrieval surface with full-text search without an external Atlas deployment.
webdatasource/solidstack-aio-ftvs:v3.0.0 Everything in the FTS variant, plus Ollama and the preloaded embeddinggemma model. SEARCH_MODE defaults to FullTextAndVector, and the local Ollama endpoint is configured as the embedding service. Use both full-text and vector search without external MongoDB or embedding services.

The AIO variants are supported only for Docker and Docker Compose deployments. The Helm chart uses the standard Solidstack image with external MongoDB and, for vector modes, an external embedding service.

AIO means all-in-one, FTS means full-text search, and FTVS means full-text and vector search. The AIO images expose MongoDB on port 27017 in addition to the Solidstack HTTP port 8080. Publishing port 27017 to the host is optional; Solidstack connects to the bundled database through the container’s loopback interface.

The AIO image initializes MongoDB with MONGO_INITDB_ROOT_USERNAME and MONGO_INITDB_ROOT_PASSWORD. The FTS and FTVS images use MONGODB_INITDB_ROOT_USERNAME and MONGODB_INITDB_ROOT_PASSWORD instead. Both username and password default to test; override them for any non-ephemeral deployment. Setting MONGODB_CONNECTION_STRING explicitly overrides the automatically constructed local connection string.

Configuration

Name Required Default Meaning
MONGODB_CONNECTION_STRING Standard image only Local MongoDB URI in AIO images MongoDB connection string for all in-process components. Include a database name unless MONGODB_DATABASE_NAME is set.
MONGODB_DATABASE_NAME No Database from the connection string Overrides the MongoDB database name.
JOB_TYPES Yes None Available job types, supplied as a comma-separated value.
TASKS_GET_RESULT_RETRY_DELAY_MS No 1000 Delay in milliseconds between attempts to obtain an in-process task result.
CRAWL_TASK_FAILURE_RECOVERY_DELAY_SEC No 600 Age in seconds after which an abandoned captured crawl task can be recovered.
EXTERNAL_IP_ADDRESS_CONFIGS No None Comma-separated Crawler address configurations.
FEATURE_FLAG_RETRIEVAL_ENABLED No false; true in FTS and FTVS Enables the Retrieval surface.
SEARCH_MODE No FullText; FullTextAndVector in FTVS Search behavior: FullText, Vector, or FullTextAndVector.
EMBEDDING_SERVICE_URL For vector modes None; local Ollama endpoint in FTVS HTTP endpoint used to create embeddings.
EMBEDDING_SERVICE_API_KEY No None Bearer token sent to the embedding service.
EMBEDDING_SERVICE_REQUEST_TEMPLATE No {'model':'embeddinggemma','input':null} JSON request template sent to the embedding service.
EMBEDDING_SERVICE_CONTENT_JSON_PATH No $.input JSONPath whose value is replaced with the input array.
EMBEDDING_SERVICE_RESULT_JSON_PATH No $.embeddings JSONPath used to extract the returned embeddings array.
EMBEDDING_VECTORS_LENGTH No 768 Number of dimensions stored in the MongoDB Atlas vector index.
GLOBAL_EXCEPTION_RESPONSE_DELAY_MS No 1000 Delay in milliseconds before returning an unhandled-error response.
HEALTH_PROBE_LOG_LEVEL No Debug Log level used for /health and /ready request messages.
MIN_LOG_LEVEL No Info Minimum application log level.

Endpoints and dependencies

Port 8080 serves the API, /api/swagger, /api/swagger/swagger.json, /mcp, /health, and /ready. Solidstack uses MongoDB for system, cache, and search data and optionally calls an HTTP embedding service for vector modes; it has no inter-service gRPC-Web dependencies.

When Retrieval is enabled, the primary MongoDB deployment must support MongoDB Atlas Search. Vector modes also require an embedding service, and EMBEDDING_VECTORS_LENGTH must match the dimensions configured by the MongoDB vector-search index.

Solidstack’s current feature provider disables Scheduling. Use the multi-service Dapi and Jober topology when Scheduling is required.

JobTypes

Supported job execution environments. Dapi or Solidstack restricts the allowed values through JOB_TYPES; Crawler or Solidstack must also advertise a matching address configuration.

Name Description
internet Crawl data from internet sources via request gateways (Proxy addresses, Host IP addresses, etc.)
intranet Crawl data from intranet sources with no limits

Please rotate your device to landscape mode

This documentation is specifically designed with a wider layout to provide a better reading experience for code examples, tables, and diagrams.
Rotating your device horizontally ensures you can see everything clearly without excessive scrolling or resizing.

Return to Web Data Source Home