Skip to content

stargate/docker-images

Repository files navigation

docker-images

Docker images for Stargate v1.

Note: For Stargate v2, Docker images are built in the main repository, with examples under the docker-compose directory.

Warning: Both the Stargate v1 release series and support for Cassandra 3.11 are considered deprecated. Stargate v1 will be unsupported as of the v3 release, which will not include support for Cassandra 3.11: details.

docker compose

Examples directory contains some docker compose files for stargate with different backends (3 nodes):

Each example also has a start_***.sh to aid starting the docker-compose environment.

Configuration

Correct settings in the environment section are essential for successful Stargate confirguration.

    environment:
      # cluster name must match backend cluster name
      # version must match backend version, e.g. 3.11 / 4.0
      - CLUSTER_NAME=backend
      - CLUSTER_VERSION=3.11
      # at least one seed node
      - SEED=backend-1
      # rack and datacenter names must match backend rack name, 
      # please notice that Apache Cassandra defaults differs from DSE defaults
      - RACK_NAME=rack1
      - DATACENTER_NAME=dc1

Starting

Backend (C* or DSE) will not start immediately after container is up. This can lead to some potential issue with backend not being ready during stargate start.

docker-compose --file <compose-file.yml> up

Safe order of running is to run backend seed nodes first and then continue with stargate / rest of backend nodes

docker-compose --file <compose-file.yml> --detach up backend-1 -d
sleep 60
docker-compose --file <compose-file.yml> --detach up stargate backend-2 -d
sleep 60
docker-compose --file <compose-file.yml> --detach up backend-3 -d

Same approach should be used when starting multiple Stargate nodes.

For more precise checks sleep can be replaced by checking if native protocol clients port (default 9042) is open e.g. using approach proposed in this guide.