Dgraph: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
No edit summary |
||
| Line 5: | Line 5: | ||
docker pull dgraph/dgraph:v20.03.0 | docker pull dgraph/dgraph:v20.03.0 | ||
mkdir -p ~/dgraph | mkdir -p ~/dgraph | ||
</source> | |||
== Dgraph start script == | |||
see https://stackoverflow.com/questions/63260073/starting-zero-alpha-and-ratel-in-a-single-command-e-g-in-macosx-and-other-envir | |||
<source lang='bash'> | |||
#!/bin/bash | |||
# WF 2020-08-05 | |||
# see https://dgraph.io/tour/intro/2/ | |||
version=v20.03.0 | |||
#ansi colors | |||
#http://www.csc.uvic.ca/~sae/seng265/fall04/tips/s265s047-tips/bash-using-colors.html | |||
blue='\033[0;34m' | |||
red='\033[0;31m' | |||
green='\033[0;32m' # '\e[1;32m' is too bright for white bg. | |||
endColor='\033[0m' | |||
# | |||
# a colored message | |||
# params: | |||
# 1: l_color - the color of the message | |||
# 2: l_msg - the message to display | |||
# | |||
color_msg() { | |||
local l_color="$1" | |||
local l_msg="$2" | |||
echo -e "${l_color}$l_msg${endColor}" | |||
} | |||
# | |||
# error | |||
# | |||
# show the given error message on stderr and exit | |||
# | |||
# params: | |||
# 1: l_msg - the error message to display | |||
# | |||
error() { | |||
local l_msg="$1" | |||
# use ansi red for error | |||
color_msg $red "Error:" 1>&2 | |||
color_msg $red "\t$l_msg" 1>&2 | |||
exit 1 | |||
} | |||
# show usage | |||
# | |||
usage() { | |||
echo "$0 [-h|--help|-k|--kill" | |||
echo "" | |||
echo "-b | --bash: start a bash terminal shell within the currently running container" | |||
echo "-h | --help: show this usage" | |||
echo "-k | --kill: stop the docker image" | |||
exit 1 | |||
} | |||
# | |||
# stop the docker image | |||
# | |||
stopImage() { | |||
color_msg $blue "stopping and removing dgraph image ..." | |||
docker stop dgraph | |||
docker rm dgraph | |||
color_msg $green "...done" | |||
} | |||
# | |||
# start a bash shell within the currently running container | |||
# | |||
bashInto() { | |||
sudo docker exec -it dgraph bash | |||
} | |||
# | |||
# dgraph zero | |||
# | |||
zero() { | |||
docker run -it -p 5080:5080 -p 6080:6080 -p 8080:8080 \ | |||
-p 9080:9080 -p 8000:8000 -v ~/dgraph:/dgraph --name dgraph \ | |||
dgraph/dgraph:$version dgraph zero | |||
} | |||
# | |||
# dgraph alpha | |||
# | |||
alpha() { | |||
docker exec -it dgraph dgraph alpha --lru_mb 2048 --zero localhost:5080 --whitelist 0.0.0.0/0 | |||
} | |||
# | |||
# dgraph ratel | |||
# | |||
ratel() { | |||
docker exec -it dgraph dgraph-ratel | |||
} | |||
me=$0 | |||
dir=$(dirname $0) | |||
base=$(basename $0) | |||
if [ $# -lt 1 ] | |||
then | |||
case $base in | |||
dgraph) | |||
# Run Dgraph zero | |||
# And in another, run ratel (Dgraph UI) | |||
# In another terminal, now run Dgraph alpha | |||
for option in zero ratel alpha | |||
do | |||
#echo $dir $option | |||
open -a terminal.app $dir/$option | |||
# wait a bit | |||
sleep 2 | |||
done | |||
;; | |||
alpha) alpha;; | |||
ratel) ratel;; | |||
zero) zero;; | |||
esac | |||
fi | |||
# commandline option | |||
while [ "$1" != "" ] | |||
do | |||
option="$1" | |||
case $option in | |||
alpha) alpha;; | |||
ratel) ratel;; | |||
zero) zero;; | |||
-b|--bash) bashInto;; | |||
-k|--kill) stopImage;; | |||
-h|--help) usage;; | |||
esac | |||
shift | |||
done | |||
</source> | </source> | ||
Revision as of 07:09, 5 August 2020
2020-08-05
docker pull dgraph/dgraph:v20.03.0
mkdir -p ~/dgraph
Dgraph start script
#!/bin/bash
# WF 2020-08-05
# see https://dgraph.io/tour/intro/2/
version=v20.03.0
#ansi colors
#http://www.csc.uvic.ca/~sae/seng265/fall04/tips/s265s047-tips/bash-using-colors.html
blue='\033[0;34m'
red='\033[0;31m'
green='\033[0;32m' # '\e[1;32m' is too bright for white bg.
endColor='\033[0m'
#
# a colored message
# params:
# 1: l_color - the color of the message
# 2: l_msg - the message to display
#
color_msg() {
local l_color="$1"
local l_msg="$2"
echo -e "${l_color}$l_msg${endColor}"
}
#
# error
#
# show the given error message on stderr and exit
#
# params:
# 1: l_msg - the error message to display
#
error() {
local l_msg="$1"
# use ansi red for error
color_msg $red "Error:" 1>&2
color_msg $red "\t$l_msg" 1>&2
exit 1
}
# show usage
#
usage() {
echo "$0 [-h|--help|-k|--kill"
echo ""
echo "-b | --bash: start a bash terminal shell within the currently running container"
echo "-h | --help: show this usage"
echo "-k | --kill: stop the docker image"
exit 1
}
#
# stop the docker image
#
stopImage() {
color_msg $blue "stopping and removing dgraph image ..."
docker stop dgraph
docker rm dgraph
color_msg $green "...done"
}
#
# start a bash shell within the currently running container
#
bashInto() {
sudo docker exec -it dgraph bash
}
#
# dgraph zero
#
zero() {
docker run -it -p 5080:5080 -p 6080:6080 -p 8080:8080 \
-p 9080:9080 -p 8000:8000 -v ~/dgraph:/dgraph --name dgraph \
dgraph/dgraph:$version dgraph zero
}
#
# dgraph alpha
#
alpha() {
docker exec -it dgraph dgraph alpha --lru_mb 2048 --zero localhost:5080 --whitelist 0.0.0.0/0
}
#
# dgraph ratel
#
ratel() {
docker exec -it dgraph dgraph-ratel
}
me=$0
dir=$(dirname $0)
base=$(basename $0)
if [ $# -lt 1 ]
then
case $base in
dgraph)
# Run Dgraph zero
# And in another, run ratel (Dgraph UI)
# In another terminal, now run Dgraph alpha
for option in zero ratel alpha
do
#echo $dir $option
open -a terminal.app $dir/$option
# wait a bit
sleep 2
done
;;
alpha) alpha;;
ratel) ratel;;
zero) zero;;
esac
fi
# commandline option
while [ "$1" != "" ]
do
option="$1"
case $option in
alpha) alpha;;
ratel) ratel;;
zero) zero;;
-b|--bash) bashInto;;
-k|--kill) stopImage;;
-h|--help) usage;;
esac
shift
done