nakama

Distributed server for social and realtime games and apps.

Nakama

Distributed server for social and realtime games and apps.

For more information have a look at the documentation and for a quick list of build targets run make help.

If you encounter any issues with the server you can generate diagnostics for us with nakama doctor. Send these to [email protected] or open an issue.

Start server

Have a look at our documentation for a full introduction on how to run Nakama in development and/or production.

To start a server locally and bind it to all network interfaces once it's installed and on your path - nakama. The server output will show how it's been configured by default.

$> nakama
[I] Nakama starting at=$$now$$
[I] Node name=nakama-97f4 version=$$version$$
[I] Data directory path=$$datadir$$
[I] Dashboard url=http://127.0.0.1:7351
[I] Client port=7350
[I] Startup done

Run Nakama with Docker

Follow the guide to run Nakama (and CockroachDB) in Docker.

Nakama Docker images are available on Docker Hub. If you'd like to publish your own Docker image have a look at our Docker README.

Deploy Nakama with Docker Cloud

Nakama can be deployed to any cloud with Docker Cloud such as AWS, Google Cloud, Azure, Digital Ocean or your own private cloud. You'll need to setup Docker Cloud and provision separate nodes for Nakama and CockroachDB.

Contribute

To build the codebase you will need to install these dependencies:

  • go The Go compiler toolchain.
  • nodejs A JavaScript runtime.
  • glide A dependency manager for Go projects.
  • protobuf A toolchain used to create custom protocols.
  • make A rule-based build tool (installed by default on most platforms).

You'll need to setup your Go environment variables like GOPATH as usual. You can then install dependent build tools and code:

$> git clone https://github.com/heroiclabs/nakama
$> cd nakama
$> make gettools
$> glide install

To run a Nakama server you'll need to connect it to a database. The system has been specially designed to work with CockroachDB for storage and queries. You can install it on OS X with brew install cockroach. For more detailed instructions see their documentation.

For development run:

$> make dbstart nakama
$> ./build/dev/nakama

To develop the admin dashboard:

$> cd dashboard; npm run dev

NOTE: The first time you setup the cockroach database you must initialize the schema with make dbstart dbsetup.

Related Repositories

ParseAlternatives

ParseAlternatives

A collaborative list of Parse alternative backend service providers. ...

ArrayPagerAdapter

ArrayPagerAdapter

A custom ViewPager adapter which are able to change data dynamically. ...

nakama-unity

nakama-unity

Unity client for Nakama server. ...

nakama-docs

nakama-docs

Documentation for the Nakama social and realtime server. ...

nakama-plugins

nakama-plugins

A collection of plugins which can be loaded by the Nakama server. ...