How to install Weaviate
This section shows you available options for running Weaviate, and how to install and configure Weaviate with each option.
How to run Weaviate
You have multiple options for running Weaviate.
- Weaviate Cloud Services – a managed Weaviate service; suitable for development and production.
- Docker Compose – typically for development.
- Kubernetes – typically for production setups.
- Embedded Weaviate - in-line instantiation from a client (experimental).
Check it out here. Or go straight to the WCS quickstart guide which covers installation.
The Weaviate library is identical regardless of whether it is used via Weaviate Cloud Services (WCS) or by downloading an open source version. The only difference that WCS manages your Weaviate instance for you and comes with a specific SLA, whereas Weaviate open source comes with a BSD-3 license.
Both Docker Compose and Kubernetes setups use a yaml file for customizing Weaviate instances, typically called
values.yaml respectively. These files will be referred to throughout the documentation as
configuration yaml files.
If self-hosting, we recommend starting with Docker and gaining familiarity with Weaviate and its configurations. You can later apply this knowledge when you are creating your Helm charts.
Run an unreleased version
You can run Weaviate with
docker-compose, building your own container off the
master branch. Note that this may not be an officially release, and may contain bugs.
git clone https://github.com/weaviate/weaviate.git
docker build --target weaviate -t name-of-your-weaviate-image .
Then, make a
docker-compose.yml file with this new image. For example:
After the build is complete, you can run this Weaviate build with docker-compose:
If you can't find the answer to your question here, please look at the:
- Frequently Asked Questions. Or,
- Knowledge base of old issues. Or,
- For questions: Stackoverflow. Or,
- For more involved discussion: Weaviate Community Forum. Or,
- We also have a Slack channel.