Skip to main content
Weaviate Docs (migrated from docs.weaviate.io) Docs

Search documentation

Type to search this documentation.

On this pageOverview

Development setup

This page describes how to run Weaviate from source (git checkout / tarball) locally.

Prerequisites:

The fastest way to run Weaviate from source is to issue the command below:

Bash
tools/dev/run_dev_server.sh <configuration>

Where <configuration> is one of the server configuration ($CONFIG) values in /tools/dev/run_dev_server.sh. For example, you can run:

Bash
tools/dev/run_dev_server.sh local-openai

To run the server locally with the OpenAI module.

The default configuration is local-development which will run the server locally with the text2vec-contextionary and backup-filesystem modules.

You can also create your own configuration. For instance, you can clone an entry (local-all-openai-cohere-google is a good start) and add the required environment variables.

To run with Docker, start up the Weaviate container and the container(s) for any additional services with

Bash
tools/dev/restart_dev_environment.sh [additional_services]

then run the development server as described in the section above.

For example, the setup below uses Docker Compose to spin up Prometheus and Grafana instances. Those are pre-configured to scrape metrics from Weaviate. Using this setup, you can:

  • access Weaviate on port 8080
  • access Grafana on port 3000 (Login: weaviate/weaviate)
  • if necessary for debugging - access prometheus directly on port 9090
Bash
tools/dev/restart_dev_environment.sh --prometheus && tools/dev/run_dev_server.sh local-no-modules

Below are more examples of running Weaviate with Docker.

Bash
tools/dev/restart_dev_environment.sh --transformers && ./tools/dev/run_dev_server.sh local-transformers
Bash
tools/dev/restart_dev_environment.sh --qna && ./tools/dev/run_dev_server.sh local-qna

The above commands are subject to change as we add more modules and require specific combinations for local testing. You can always inspect restart_dev_environment.sh and run_dev_server.sh to see which options are available. The first option without any arguments is always guaranteed to work.

To make queries from a web interface, use the WCD console to connect to localhost:8080.

Have a question or feedback? Here's how to reach us.

Suggest an edit

Propose a replacement for this page. The site team reviews it before applying any changes.

Export
Documentation menu