Nakama Binary for Linux #

This tutorial will show you how to setup and run Nakama binary and its prerequisites on Linux.

The binary setup allows you to install and manage Nakama without Docker but it requires extra steps to setup and manage:

  • Installing CockroachDB or PostgreSQL
  • Manually applying database migrations
  • Manually upgrading Nakama and its database to newer versions
  • Configuring services or manually starting Nakama and its database

Prerequisites #

Operating system #

Before proceeding ensure that you are running a X86_64 (64bit) Linux distribution.

Next, install a supported database engine.

CockroachDB #

Nakama officially supports CockroachDB v20.0 or higher, with queries optimised for its storage engine.

Install CockroachDB via one the official supported methods:

  • Binary
  • Build from source

PostgreSQL #

Nakama unofficially supports PostgreSQL 9.6 or higher for development environments only.

Install PostgreSQL via:

Download Nakama #

Get the latest binary release of Nakama server:

  1. Download a release from the Nakama GitHub repo releases page.
  2. Extract the archive, optionally rename and move the folder to a suitable location.

Running Nakama #

Before starting Nakama server you will need to run:

  1. Your chosen database, CockroachDB or PostgreSQL.
  2. Nakama database migrations if it is your first time running Nakama or you have upgraded Nakama versions.

Nakama migrations #

If this is your first time running Nakama or you have upgraded Nakama versions, you may need to run Nakama database migrations. If you are unsure, running migrations again is safe.

If you are running CockroachDB with the default configuration, running migrations is straightforward with no additional options necessary.

If you are using PosgreSQL you will need to supply your database server address, user and password.

To run Nakama migrations, navigate to your Nakama directory and run the following:

CockroachDB

1
./nakama migrate up

PostgreSQL

1
./nakama migrate up --database.address postgres:password@127.0.0.1:5432

Nakama server #

To start Nakama server with CockroachDB or PostgreSQL, navigate to your Nakama directory and run the following:

CockroachDB

1
./nakama

PostgreSQL

1
./nakama --database.address postgres:password@127.0.0.1:5432

You will need to provide the same database.address value used for running Nakama PostgreSQL database migrations:

systemd #

If you prefer to run Nakama as a service, and you’re running a distro that uses systemd, you can optionally use the following script. You’ll need to use your Nakama paths within the systemd configuration.

Create the service file /usr/lib/systemd/system/nakama.service with the following content:

nakama.service

1
2
3
4
5
6
7
8
9
[Unit]
Description=Nakama server

[Service]
ExecStart=/path/to/nakama --config /path/to/nakama/config.yml
KillMode=process

[Install]
WantedBy=multi-user.target

Update file permission so it’s readable by the systemd daemon process:

1
sudo chmod 644 /usr/lib/systemd/system/nakama.service

Enable and run the service:

1
2
sudo systemctl enable nakama
sudo systemctl start nakama

Nakama Console #

You can access the Nakama Console by navigating your browser to 127.0.0.1:7351.

Nakama console
Nakama console

When prompted to login, the default credentials are admin:password. These can be changed via configuration file or command-line flags.

Configuration file #

There are many configuration options available that you can customize for your Nakama server.

Next steps #

With your Nakama server now up and running with the desired configuration, you can get started with your preferred client SDK.

Related Pages