forked from salonibhogale/qhsearchui
-
Notifications
You must be signed in to change notification settings - Fork 2
/
setup.sh
executable file
·82 lines (63 loc) · 3.47 KB
/
setup.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
#!/bin/bash
# Bail on errors.
set -e
: ${CONTAINER_NAME:="qhsearch_demo_es"}
: ${ES_CONFIG:="/usr/share/elasticsearch/config/elasticsearch.yml"}
: ${ES_HOST:="localhost"}
: ${ES_PORT:="9300"}
# Start a docker container.
echo "Starting ES container."
docker run -p $ES_PORT:9200 -d --name $CONTAINER_NAME elasticsearch:2.4.4
# Write ES settings.
echo "Writing ES config to $ES_CONFIG."
docker exec -i $CONTAINER_NAME dd of=$ES_CONFIG < ./data/elasticsearch.yml
# Restart container.
echo "Restarting container."
docker restart $CONTAINER_NAME
# Wait until ES is available.
printf "Waiting for elasticsearch to become available."
until curl -s -o /dev/null -XGET "http://$ES_HOST:$ES_PORT/_search"; do
>&2 printf "."
sleep 1
done
>&2 printf "ready."
# Delete index (if it exists).
# printf "Attempting to delete previous index."
# curl -s -S -XDELETE "http://$ES_HOST:$ES_PORT/events"
# Create mapping for data. Note the trailing slash.
printf "creating index"
curl -X GET "localhost:9300/_cat/indices/"
printf "\n\nCreating mapping."
curl -s -S -o /dev/null -XPUT "http://$ES_HOST:$ES_PORT/questions3/" --data-binary @data/qhdata-mappings2.json
# Insert data. This order is important
printf "\n\nInserting data."
curl -s -S -o /dev/null -XPOST "localhost:9300/_bulk" --data-binary @data/22Mayoutfile_full_date_p1.ndjson
curl -s -S -o /dev/null -XPOST "localhost:9300/_bulk" --data-binary @data/22Mayoutfile_full_date_p2.ndjson
curl -s -S -o /dev/null -XPOST "localhost:9300/_bulk" --data-binary @data/22Mayoutfile_full_date_p3.ndjson
curl -s -S -o /dev/null -XPOST "localhost:9300/_bulk" --data-binary @data/22Mayoutfile_full_date_p4.ndjson
curl -s -S -o /dev/null -XPOST "localhost:9300/_bulk" --data-binary @data/22Mayoutfile_full_date_p5.ndjson
curl -s -S -o /dev/null -XPOST "localhost:9300/_bulk" --data-binary @data/22Mayoutfile_full_date_p6.ndjson
curl -s -S -o /dev/null -XPOST "localhost:9300/_bulk" --data-binary @data/22Mayoutfile_full_date_p7.ndjson
curl -s -S -o /dev/null -XPOST "localhost:9300/_bulk" --data-binary @data/22Mayoutfile_full_date_p8.ndjson
curl -s -S -o /dev/null -XPOST "localhost:9300/_bulk" --data-binary @data/22Mayoutfile_full_date_p9.ndjson
curl -s -S -o /dev/null -XPOST "localhost:9300/_bulk" --data-binary @data/22Mayoutfile_full_date_10.ndjson
curl -s -S -o /dev/null -XPOST "localhost:9300/_bulk" --data-binary @data/22Mayoutfile_full_date_single_1.ndjson
curl -s -S -o /dev/null -XPOST "localhost:9300/_bulk" --data-binary @data/22Mayoutfile_full_date_11.ndjson
curl -s -S -o /dev/null -XPOST "localhost:9300/_bulk" --data-binary @data/22Mayoutfile_full_date_12.ndjson
curl -s -S -o /dev/null -XPOST "localhost:9300/_bulk" --data-binary @data/22Mayoutfile_full_date_single_2.ndjson
curl -s -S -o /dev/null -XPOST "localhost:9300/_bulk" --data-binary @data/22Mayoutfile_full_date_13.ndjson
curl -s -S -o /dev/null -XPOST "localhost:9300/_bulk" --data-binary @data/22Mayoutfile_full_date_single_3.ndjson
curl -s -S -o /dev/null -XPOST "localhost:9300/_bulk" --data-binary @data/22Mayoutfile_full_date_14.ndjson
curl -s -S -o /dev/null -XPOST "localhost:9300/_bulk" --data-binary @data/22Mayoutfile_full_date_15.ndjson
# curl -s -S -o /dev/null -XPOST "localhost:9300/_bulk" --data-binary @data/merged_file.ndjson
printf "\n\nElasticsearch setup done, next: set up docker for UI.\n\n"
# build the dockerfile
docker build -t qhsearchui:dev .
docker run \
-itd \
--rm \
-v ${PWD}:/app \
-v /app/node_modules \
-p 3003:3000 \
-e CHOKIDAR_USEPOLLING=true \
qhsearchui:dev