Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Fetching contributors…

Cannot retrieve contributors at this time

91 lines (66 sloc) 2.856 kB
Tarantool is a framework for in-memory key/value storage and
Box is a yet another in-memory key-value database.
Key features of the pair include:
* log streaming replication
* hot standby
* a simple binary protocol, as well as emulation of memcached
* extensibility and speed
* currently supported platforms are only Linux/x86 and
* gcc is the only supported compiler.
Tarantool is written in C and Objective C.
To build, you will need GCC Objective C frontend
(gcc-objc package on most systems) or Apple CLang compiler.
CMake is used for configuration management.
3 standard CMake build types are supported:
* Debug -- used by project maintainers
* RelWithDebugInfo -- the most common release configuration,
also provides debugging capabilities
* Release -- use only if the highest performance is required
The only external library dependency is readline: libreadline-dev
is required to build the command line client.
Please follow these steps to compile Tarantool:
tarantool $ cmake .
tarantool $ make
To use a different release type, say, RelWithDebugInfo, use:
tarantool $ cmake . -DCMAKE_BUILD_TYPE=RelWithDebugInfo
Additional build options can be set similarly:
tarantool $ cmake . -DCMAKE_BUILD_TYPE=RelWithDebugInfo -DENABLE_CLIENT=true
-- builds the command line client.
'make' creates tarantool_box executable in directory
mod/box and tarantool executable in client/tarantool.
There is no 'make install' goal, but no installation
is required either.
Tarantool regression testing framework (test/ is the
simplest way to setup and start the server, but it requires a few
additional Python modules:
* daemon
* pyyaml
* pexpect.
Once all pre-requisites are installed, try:
tarantool $ cd test && ./ --start-and-exit
This will create a 'var' subdirectory in directory 'test',
populate it with necessary files, and
start the server. To connect, you could use
a simplistic command-line client:
tarantool $ ./test/tarantool
Alternatively, if a customized server configuration is required,
you could follow these steps:
tarantool $ emacs cfg/tarantool_box_cfg.cfg # edit the configuration
# Initialize the storage directory, path to this directory
# is specified in the configuration file:
tarantool $ mod/box/tarantool_box --config cfg/tarantool_box_cfg.cfg --init-storage
# run
tarantool $ mod/box/tarantool_box --config cfg/tarantool_box_cfg.cfg
Please report bugs at
We also warmly welcome your feedback in the discussion mailing
list,, however, please be
warned: Launchpad silently deletes posts from non-subscribed
members, thus please be sure to have subscribed to the list prior
to posting.
Thank you for your interest in Tarantool!
Jump to Line
Something went wrong with that request. Please try again.