Table of documentation contents

Installation Guide

Weaviate is completely containerized, you can use Docker Compose and/or Kubernetes to run it.

Index

Video Tutorial

Do you prefer video over text or do you want more background information?

Basics

  • The main entrypoint for the Weaviate API is /v1.
  • If your Weaviate is available over the internet or locally, you can use the Weaviate Playground to interact with it.
  • All environments run out of the box.

Weaviate Cluster Service (WCS)

Weaviate Clusters are managed instances hosted on the SeMI network. Weaviate Clusters are ideal to quickly setup and run or test out Weaviate’s capabilities. You can request a free Weaviate Cluster;

Docker Compose

You can run a Weaviate instance with Docker Compose as follows on Linux and MacOS:

Want another language? Make sure to let us know here.

Weaviate with an English contextionary

# Download the Weaviate configuration file
$ curl -O https://raw.githubusercontent.com/semi-technologies/weaviate/0.20.1/docker-compose/runtime/en/config.yaml
# Download the Weaviate docker-compose file
$ curl -O https://raw.githubusercontent.com/semi-technologies/weaviate/0.20.1/docker-compose/runtime/en/docker-compose.yml
# Run Docker compose
$ docker-compose up

Weaviate with a Dutch contextionary

# Download the Weaviate configuration file
$ curl -O https://raw.githubusercontent.com/semi-technologies/weaviate/0.20.1/docker-compose/runtime/nl/config.yaml
# Download the Weaviate docker-compose file
$ curl -O https://raw.githubusercontent.com/semi-technologies/weaviate/0.20.1/docker-compose/runtime/nl/docker-compose.yml
# Run Docker compose
$ docker-compose up

Warning: The output is quite verbose, for an alternative see attaching to only the log output of weaviate.

Attaching to the log output of only weaviate

The log output of weaviate’s backing databases can be quite verbose. We instead recommend to attach only to weaviate itself. In this case run docker-compose up like so:

  • Download the config.yaml and docker-compose.yml compose files as mentioned here.
  • Instead of running docker-compose up run the following command;
# Run Docker compose
$ docker-compose up -d && docker-compose logs -f weaviate

Alternatively you can run docker-compose entirely detached with docker-compose up -d and poll {bind_address}:{port}/v1/meta until you receive status 200 OK.

Docker Compose (manual installation)

You can also download the files manually if you have trouble with the above script.

  1. $ mkdir weaviate && cd weaviate
  2. Download the files located in this folder.
  3. Run docker-compose up in the same location you’ve downloaded the files.

The output of the above setup is quite verbose, you can also run the above command with Weaviate related logs only;

Kubernetes

coming soon

Weaviate Configuration File

Configuration customizations can be made in the configuration YAML file.

Note: in principle Weaviate runs out of the box and the configuration should only be changed in very customized situations.

OpenID Authentication

In the configuration YAML file, you can specify the desired mode of authentication, such as OpenID Connect.

Currently Anonymous Access and OpenID Connect are supported. Other Authentication schemes might become available in the near future.

You can read more about how to setup (OpenID) authentication here.

If all authentication schemes - including anonymous access - are disabled, Weaviate will fail to start up and ask you to configure at least one.

Frequently Asked Questions

If you can’t find the answer to your question here, please use the:

  1. Knowledge base of old issues. Or,
  2. For questions: Stackoverflow. Or,
  3. For issues: Github.
Tags
  • Installation
  • Running
  • Kubernetes