From 68d1bddead24f33a6bcb8f40dba5984617c455d1 Mon Sep 17 00:00:00 2001 From: vinny Date: Wed, 9 May 2018 18:19:47 +0200 Subject: [PATCH] add entities search engine & elasticsearch - implement entities search engine as a distinct container - rename app to inventaire - disable entities popularity for clearer logs - inventaire path move top /opt/inventaire --- .gitignore | 1 + README.md | 67 +++++++++++++++++++++++++++++++++++++++ Readme | 39 ----------------------- docker-compose.yml | 25 +++++++++++++-- utils/config/local.coffee | 10 +++++- 5 files changed, 99 insertions(+), 43 deletions(-) create mode 100644 README.md delete mode 100644 Readme mode change 100644 => 100755 utils/config/local.coffee diff --git a/.gitignore b/.gitignore index 3422c36..299e398 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,2 @@ inventaire +entities-search-engine diff --git a/README.md b/README.md new file mode 100644 index 0000000..66705f7 --- /dev/null +++ b/README.md @@ -0,0 +1,67 @@ +Readme + +To run inventaire in a docker-compose setup + +## Install + +Get [docker-compose](https://docs.docker.com/compose/gettingstarted/) on your machine + +Clone this repo + +``` +git clone https://github.com/inventaire/inventaire-docker.git +``` + +got to `cd inventaire-docker` + +clone the two repos inventaire needs to run : + + - `inventaire` -> [setup](https://github.com/inventaire/inventaire#installation) + - `entities-search-engine` + +``` +git clone https://github.com/inventaire/inventaire.git +git clone https://github.com/inventaire/entities-search-engine.git +``` + +Copy docker utils files into inventaire folder if necessary + +``` +cp (or ln) utils/config/local.coffee inventaire/config/local.coffee +``` + +Start the magic + +``` +docker-compose up --build +``` + +Once containers have been build, you can simply `docker-compose up` + +## Load wikidata into elasticsearch + +start the containers `docker-compose up` + +``` +claim=P31:Q5 +type=humans +docker-compose exec entities-search-engine ./bin/dump_wikidata_subset claim type +``` + +for more [info](https://github.com/inventaire/entities-search-engine/blob/master/docs/wikidata_filtered_dump_import.md) + +## Fixtures + +In case you would like to play with out-of-the-box data. + +Run api tests to populate tests dbs: + +``` +docker-compose exec inventaire npm run test-api +``` + +- Replicate `*-tests` dbs documents into `*` dbs + +``` +docker-compose exec inventaire npm run replicate-tests-db +``` diff --git a/Readme b/Readme deleted file mode 100644 index d12cb79..0000000 --- a/Readme +++ /dev/null @@ -1,39 +0,0 @@ -Readme - -To run inventaire in a docker-compose setup - -## Install - -Get [docker-compose](https://docs.docker.com/compose/gettingstarted/) on your machine - -Clone this repo -``` -git clone https://github.com/inventaire/inventaire-docker.git -cd inventaire-docker -``` - -then setup you own inventaire locally within inventaire-docker folder. -Copy docker utils files into inventaire folder if necessary - -``` -git clone https://github.com/inventaire/inventaire.git -cp utils/config/local.coffee inventaire/config/local.coffee -docker-compose up -d -``` - -## Fixtures - -You will propbably want to play with some fixtures data. - -- Start the containers -- Run api tests to populate tests dbs: - -``` -docker-compose exec app npm run test-api -``` - -- Replicate `*-tests` dbs documents into `*` dbs - -``` -docker-compose exec app npm run replicate-tests-db -``` diff --git a/docker-compose.yml b/docker-compose.yml index b51bd7c..264d20c 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -7,13 +7,32 @@ services: environment: COUCHDB_USER: "couchdb" COUCHDB_PASSWORD: "password" - app: + inventaire: image: node:6.11.1 command: "npm start" ports: - "3006:3006" volumes: - - ./inventaire:/inventaire + - ./inventaire:/opt/inventaire links: - couch - working_dir: /inventaire + working_dir: /opt/inventaire + depends_on: + - entities-search-engine + elasticsearch: + image: elasticsearch + environment: + - 'http.host=0.0.0.0' + - 'transport.host=127.0.0.1' + ports : + - '127.0.0.1:9200:9200' + entities-search-engine: + image: node:6.11.1 + command: 'node_modules/coffee-script/bin/coffee server/server.coffee' + ports: + - "3213:3213" + volumes: + - ./entities-search-engine:/opt/entities-search-engine + links: + - couch + working_dir: /opt/entities-search-engine diff --git a/utils/config/local.coffee b/utils/config/local.coffee old mode 100644 new mode 100755 index 06de10a..abcce2d --- a/utils/config/local.coffee +++ b/utils/config/local.coffee @@ -1,6 +1,8 @@ module.exports = - env: 'production' host: '0.0.0.0' + elasticsearch: + host: '0.0.0.0' + port: '9200' db: protocol: 'http' # host defined in docker-compose couchdb image name @@ -9,3 +11,9 @@ module.exports = username: 'couchdb' password: 'password' debug: true + runJobsInQueue: + 'wd:popularity': false + entitiesSearchEngine: + updateEnabled: false + localPath: '/opt/entities-search-engine' + delay: 3000