Linux 的 Nakama 二进制

本教程将介绍如何在 Linux 上设置和运行 Nakama 二进制文件及其前提条件。

二进制设置允许您在没有Docker的情况下安装和管理 Nakama,但它需要额外的步骤来设置和管理:

  • 安装 CockroachDB 或 PostgreSQL
  • 手动应用数据库迁移
  • 手动将 Nakama 及其数据库升级到较新版本
  • 配置服务或手动启动 Nakama 及其数据库

前提条件 #

运行系统 #

继续之前,确保您正在运行 X86_64 (64bit) Linux 发行版。

接下来,安装受支持的数据库引擎。

CockroachDB #

Nakama 官方支持 CockroachDB v20.0 或更高版本,并为其存储引擎优化了查询。

通过官方支持的方法安装 CockroachDB:

  • 二进制
  • 从源代码安装

PostgreSQL #

Nakama 仅在开发环境中非官方支持 PostgreSQL 9.6 或更高版本。

通过以下安装 PostgreSQL:

  • Debian、Red Hat/CentOS、Suse 和 Ubuntu 的官方软件包
  • 从源代码安装

下载 Nakama #

获取适用于的 Nakama 服务器的最新二进制版本:

  1. 在 Nakama GitHub repo版本页面下载一个版本。
  2. 提取归档文件,可选择重命名文件夹并将其移动到合适的位置。

正在运行 Nakama #

启动 Nakama 服务器之前,您需要运行:

  1. 您选中的数据库,即 CockroachDB 或 PostgreSQL。
  2. 如果这是您第一次运行 Nakama 或您已升级 Nakama 版本,应迁移 Nakama 数据库。

Nakama 迁移 #

如果这是您第一次运行 Nakama 或您已升级 Nakama 版本,应运行 Nakama 数据库迁移。如果您不确定,可以重新运行迁移。

如果您在默认配置下运行 CockroachDB,则运行迁移非常简单,无需其他选项。

如果您正在使用 PosgreSQL,则需要提供您的数据库服务器地址、用户和密码。

要运行 Nakama 迁移,导航至您的 Nakama 目录并运行以下内容:

CockroachDB

1
./nakama migrate up

PostgreSQL

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

Nakama 服务器 #

要使用 CockroachDB 或 PostgreSQL 启动 Nakama 服务器,导航至您的 Nakama 目录并运行以下内容:

CockroachDB

1
./nakama

PostgreSQL

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

您需要提供与用于运行Nakama PostgreSQL 数据库迁移相同的database.address值:

systemd #

如果您偏好将 Nakama 作为服务运行,并且您正在运行使用 systemd 的发行版,则可以选择使用以下脚本。 您需要在 systemd 配置中使用您的 Nakama 路径。

创建包含以下内容的服务文件/usr/lib/systemd/system/nakama.service

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

更新文件权限,使其可以在systemd守护进程中读取:

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

启用并运行服务:

1
2
sudo systemctl enable nakama
sudo systemctl start nakama

Nakama 控制台 #

您可以通过将浏览器导航到127.0.0.1:7351来访问 Nakama 控制台。

提示登录时,默认凭据为admin:password 。可以通过配置文件或命令行标志更改凭据。

配置文件 #

您可为 Nakama 服务器自定义许多配置选项

后续步骤 #

现在您的 Nakama 服务器已经启动并运行了所需的配置,您可以使用首选的客户端 SDK 开始进行操作。

Related Pages