Skip to content

Instantly share code, notes, and snippets.

@charego
Created January 5, 2018 16:34
Show Gist options
  • Save charego/45b376b74c1c53b3f7d0c44714af6d88 to your computer and use it in GitHub Desktop.
Save charego/45b376b74c1c53b3f7d0c44714af6d88 to your computer and use it in GitHub Desktop.
Cassandra Docker helper
#!/bin/bash
CASSANDRA_IMAGE='cassandra'
CASSANDRA_VERSION='2.2.9'
CASSANDRA_CONTAINER="${CASSANDRA_IMAGE}-${CASSANDRA_VERSION}"
cassandraCreate() {
docker run -d -p 9042:9042 --name ${CASSANDRA_CONTAINER} ${CASSANDRA_IMAGE}:${CASSANDRA_VERSION}
}
cassandraStart() {
docker start ${CASSANDRA_CONTAINER}
}
cassandraStop() {
docker stop ${CASSANDRA_CONTAINER}
}
cassandraStatus() {
docker ps --filter "name=${CASSANDRA_CONTAINER}"
}
cassandraConnect() {
docker exec -it ${CASSANDRA_CONTAINER} cqlsh -k mitigation
if [ $? -ne 0 ]; then
docker exec -it ${CASSANDRA_CONTAINER} cqlsh
fi
}
cassandraTruncate() {
docker exec -it ${CASSANDRA_CONTAINER} cqlsh -k mitigation --execute "TRUNCATE table_one; TRUNCATE table_two;"
}
case "$1" in
create)
cassandaCreate;;
start)
cassandraStart;;
stop)
cassandraStop;;
status)
cassandraStatus;;
connect)
cassandraConnect;;
truncate)
cassandraTruncate;;
*)
echo $"Usage: $0 {create|start|stop|connect|truncate}"
exit 1
esac
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment