Reverbrain wiki

Site Tools


Server setup tutorial

We will build Elliptics from scratch, using source code. All steps are made on Ubuntu 12.04 LTS (Precise Pangolin) release.

Required packages

sudo aptitude install cmake g++ git-core libboost-python-dev libboost-dev libboost-program-options-dev libboost-iostreams-dev libboost-thread-dev python-dev libboost-system-dev libltdl-dev libsnappy-dev libboost-regex-dev debhelper cdbs devscripts python-support libleveldb-dev libcurl4-openssl-dev libxml2-dev

Building and installing the packages

Download sources

git clone
git clone
git clone
git clone -b v0.11
git clone -b v0.11
git clone -b v0.11
git clone -b v0.11
cd cocaine-core
git submodule init
git submodule update


Build package

cd eblob
debuild -sa

If something is missing debuild will complain loudly, but if all above packages are installed successfully, things should be ok.

Do not pay much attention to debsign errors:

debsign: gpg error occurred!  Aborting....
debuild: fatal error at line 1271:
running debsign failed

Install eblob

sudo dpkg -i eblob_*_amd64.deb

Cocaine core

sudo aptitude install equivs devscripts
sudo aptitude install python-pip python-dev
pip install setuptools
cd cocaine-core
sudo mk-build-deps -ir
sudo aptitude install libssl-dev
debuild -sa
cd ..
sudo dpkg -i cocaine-dbg_*_amd64.deb cocaine-runtime_*_amd64.deb libcocaine-core2_*_amd64.deb libcocaine-dev_*_amd64.deb
cd cocaine-tools
sudo python install
cd ..
cd cocaine-framework-python
sudo python install
cd ..
cd cocaine-framework-native
debuild -sa
cd ..
sudo dpkg -i cocaine-framework-native_*_amd64.deb cocaine-framework-native-dbg_*_amd64.deb cocaine-framework-native-dev_*_amd64.deb


cd elliptics
debuild -sa
cd ..
sudo dpkg -i elliptics-client_*_amd64.deb elliptics_*_amd64.deb elliptics-dev_*_amd64.deb


cd swarm
debuild -sa
cd ..
sudo dpkg -i libswarm*_amd64.deb

Packages list

So far operations should have a similar list of installed packages as a result (versions of packages can be different):

ii  libswarm-dbg                   Swarm is aiming at your web (debug)
ii  libswarm-dev                   Swarm is aiming at your web (devel)
ii  libswarm2                      Swarm is aiming at your web
ii  libswarm2-urlfetcher           Swarm is aiming at your web. Url fetch tools
ii  libswarm2-xml                  Swarm is aiming at your web. HTTP-parsing tools
ii  eblob                               0.21.28     BLOB data container
ii  elliptics                    Distributed hash table storage
ii  elliptics-client             Distributed hash table storage (client library)
ii  elliptics-dev                Distributed hash table storage (includes)
ii  cocaine-core-build-deps             1.0         build-dependencies for cocaine-core
ii  cocaine-dbg                   Cocaine - Debug Files
ii  cocaine-framework-native      Cocaine - Native Framework
ii  cocaine-framework-native-dbg    Cocaine - Native Framework Debug Files
ii  cocaine-framework-native-dev    Cocaine - Native Framework Development Headers
ii  cocaine-runtime               Cocaine - Runtime
ii  libcocaine-core2              Cocaine - Core Libraries
ii  libcocaine-dev                Cocaine - Development Headers

To help you perform the above operations we prepared scripts (packages, sources, build).

Starting elliptics server

Please consider configuration section for configuration options.

To start elliptics server, run

dnet_ioserv -c config.json

If there are any errors, they will show up in log file

elliptics/server_eblob_tutorial.txt · Last modified: 2017/08/10 18:41 by zbr