Docker container to configure a DataStax Enterprise cluster for use with KillrVideo, including single and multi-node clusters, with options as described below. Contains startup scripts to bootstrap the CQL and DSE Search resources needed by the KillrVideo application. Based on the official DSE image from the Docker Store.
This container supports several different options for configuration:
By default, this container assumes that DataStax Enterprise is being started in a Docker container
as part of a docker-compose configuration.
If you instead wish to deploy KillrVideo with an existing cluster, you can override this
behavior by setting the value of the KILLRVIDEO_DSE_CONTACT_POINTS environment variable to the location
of a node in the external cluster. (Don't forget to modify docker-compose files so that
you don't continue to run DSE in Docker. See the KillrVideo Docker documentation page
for more information.)
KillrVideo may require keyspaces to be created with different replication strategies depending on where it is deployed to use a single- or multi-node DSE cluster (i.e. for development vs. production deployments).
- By default, this container will create KillrVideo keyspaces for DSE Database (Cassandra)
and DSE Graph using the
SimpleStrategywith a replication factor of 1. - You can override the replication factor that will be used for the primary application Cassandra
tables by setting the
KILLRVIDEO_CASSANDRA_REPLICATIONenvironment variable. Here's an example of how to set this variable in an.envfile you use withdocker-compose:
KILLRVIDEO_CASSANDRA_REPLICATION={'class' : 'NetworkTopologyStrategy', 'us-west-2-graph' : 3}
- Similarly, you can override the replication factor that will be used for the graph on which our
recommendation engine is implemented by setting the
KILLRVIDEO_GRAPH_REPLICATIONenvironment variable.
This container can optionally use administrative and/or standard (application) roles and even create the roles on request:
- Using an administrator role - if the environment variables
KILLRVIDEO_ADMIN_USERNAMEandKILLRVIDEO_ADMIN_PASSWORDare set, the provided values will be used as the credentials for configuration steps requiring administrative privileges - Creating an administrator role - if the environment variable
KILLRVIDEO_CREATE_ADMIN_USERis set to true, an administrative role with the credentials specfied by theKILLRVIDEO_ADMIN_USERNAMEandKILLRVIDEO_ADMIN_PASSWORDenvironment variables will be created, and the default admin user (cassandra/cassandra) will be removed. This is particularly useful for desktop deployments. - Using an application role - if the environment variables
KILLRVIDEO_DSE_USERNAMEandKILLRVIDEO_DSE_PASSWORDare set, the provided values will be used as the credentials for configuration steps that don't require administrative privileges - Creating an application role - if the environment variable
KILLRVIDEO_CREATE_DSE_USERis set to true, a role with the credentials specfied by theKILLRVIDEO_DSE_USERNAMEandKILLRVIDEO_DSE_PASSWORDenvironment variables will be created. This role will be granted permissions required by the KillrVideo application. The same username/password environment variables be provided to clients (containers) in the KillrVideo ecosystem such as the web application and test data generator in order for them to authenticate to DSE.
For additional information on running DSE nodes within Docker as part of a KillrVideo deployment, please see the KillrVideo Docker documentation page.
Continuous integration builds are done by Travis and any commits that are tagged will also automatically
be released to the Docker Hub page. We try to follow semantic versioning,
however the version numbering is not related to what version of DSE we're using. For example,
version 1.0.0 uses DSE version 5.1.5.