System dependencies¶
Git and Python¶
First of all, you need Git and Python 2.7 (installed by default on OSX and many Linux distributions).
If you use apt-get
, the package is named git-core
.
If you prefer Homebrew (OSX), the package is named git
.
Retrieving the sources¶
The sources of the project are on Github:
$ git clone https://github.com/etalab/udata.git
MongoDB, ElasticSearch and Redis¶
The project depends on MongoDB 3.2+, ElasticSearch 1.7 and Redis.
Installing these dependencies can be cumbersome given you operating system. That’s why we made a Docker container to ease that step. You can either use it or install these dependencies by hand with the appropriated versions.
With Docker¶
We will use docker-compose to manage all that. Install Docker-Compose for your system. On linux you should also create a docker group. On Windows and MacOSX you will have to use a docker-machine.
Then start the services:
$ cd udata
$ docker-compose up
On the very first run it will download and install Docker images which takes a while depending of your connection.
Warning
Test your docker-compose is running successfully entering curl http://locahost:9200
.
It should output a JSON search response.
If you have no output at all for too long,
check the IPv6 possible issue.
And install the analysis-icu plugin for ElasticSearch:
$ docker-compose run search plugin install elasticsearch/elasticsearch-analysis-icu/2.7.0
$ docker-compose restart search
By hand¶
It will depend on your configuration, join us on Gitter if you have any issue. Try to match the exact version for ElasticSearch (1.7) given that version 2.+ is not backward-compatible!
Note
Match the Analysis ICU plugin version to your elasticsearch version given those indicated in the official repository
Once all dependencies are installed by hand, you can launch these services manually or use Honcho with the proposed Procfile at the root of the repository (you’ll have to uncomment related lines).
But first, let’s install local dependencies!