Client
.NET/Unity C++/Unreal/Cocos2d-x JavaScript/Cocos2d-js Godot 3 Godot 4 Java/Android Defold cURL REST Swift Dart/Flutter
Server
TypeScript Go Lua
使用 Docker Compose 安装 Nakama Docker 是下载并使用 Nakama 开始开发的最快捷的方式。通过使用 Docker,您可以:
安装到原始环境 轻松为 Nakama 安装和运行CockroachDB 或PostgreSQL 数据库 在不影响主操作系统的情况下,拍摄快照、删除和重新安装 Nakama 无论使用哪种操作系统,都能享受快速简单的安装体验 参照本指南,您将使用Docker Compose 快速轻松定义所有必要的服务并运行您的本地 Nakama 开发实例。
前提条件
# 继续之前,确保您已安装Docker Desktop 。
正在运行 Nakama
# 首先为您 Nakama 服务器创建所在目录,例如:Desktop/nakama。 在该文件夹中创建一个docker-compose.yml文件,并使用首选文本编辑器将其打开。 Heroic Labs 提供了两个 YML 文件供使用:将CockroachDB 或PostgreSQL 用作数据库。 docker-compose.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
version : "3"
services :
cockroachdb :
image : cockroachdb/cockroach:latest-v23.1
command : start-single-node --insecure --store=attrs=ssd,path=/var/lib/cockroach/
restart : "no"
volumes :
- data:/var/lib/cockroach
expose :
- "8080"
- "26257"
ports :
- "26257:26257"
- "8080:8080"
healthcheck :
test : [ "CMD" , "curl" , "-f" , "http://localhost:8080/health?ready=1" ]
interval : 3s
timeout : 3s
retries : 5
nakama :
image : registry.heroiclabs.com/heroiclabs/nakama:3.22.0
entrypoint :
- "/bin/sh"
- "-ecx"
- >
/nakama/nakama migrate up --database.address root@cockroachdb:26257 &&
exec /nakama/nakama --name nakama1 --database.address root@cockroachdb:26257 --logger.level DEBUG --session.token_expiry_sec 7200 --metrics.prometheus_port 9100
restart : "no"
links :
- "cockroachdb:db"
depends_on :
cockroachdb :
condition : service_healthy
prometheus :
condition : service_started
volumes :
- ./:/nakama/data
expose :
- "7349"
- "7350"
- "7351"
- "9100"
ports :
- "7349:7349"
- "7350:7350"
- "7351:7351"
healthcheck :
test : [ "CMD" , "/nakama/nakama" , "healthcheck" ]
interval : 10s
timeout : 5s
retries : 5
prometheus :
image : prom/prometheus
entrypoint : /bin/sh -c
command : |
'sh -s <<EOF
cat > ./prometheus.yml <<EON
global:
scrape_interval: 15s
evaluation_interval: 15s
scrape_configs:
- job_name: prometheus
static_configs:
- targets: ['localhost:9090']
- job_name: nakama
metrics_path: /
static_configs:
- targets: ['nakama:9100']
EON
prometheus --config.file=./prometheus.yml
EOF'
ports :
- "9090:9090"
volumes :
data :
docker-compose-postgres.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
version : "3"
services :
postgres :
container_name : postgres
image : postgres:12.2-alpine
environment :
- POSTGRES_DB=nakama
- POSTGRES_PASSWORD=localdb
volumes :
- data:/var/lib/postgresql/data
expose :
- "8080"
- "5432"
ports :
- "5432:5432"
- "8080:8080"
healthcheck :
test : [ "CMD" , "pg_isready" , "-U" , "postgres" , "-d" , "nakama" ]
interval : 3s
timeout : 3s
retries : 5
nakama :
container_name : nakama
image : registry.heroiclabs.com/heroiclabs/nakama:3.22.0
entrypoint :
- "/bin/sh"
- "-ecx"
- >
/nakama/nakama migrate up --database.address postgres:localdb@postgres:5432/nakama &&
exec /nakama/nakama --name nakama1 --database.address postgres:localdb@postgres:5432/nakama --logger.level DEBUG --session.token_expiry_sec 7200
restart : always
links :
- "postgres:db"
depends_on :
postgres :
condition : service_healthy
volumes :
- ./:/nakama/data
expose :
- "7349"
- "7350"
- "7351"
ports :
- "7349:7349"
- "7350:7350"
- "7351:7351"
healthcheck :
test : [ "CMD" , "/nakama/nakama" , "healthcheck" ]
interval : 10s
timeout : 5s
retries : 5
volumes :
data :
将您的首选项的内容复制并粘贴到您的docker-compose.yml文件中。
您必须编辑docker-compose.yml文件中的nakama:volumes:条目,使其呈现如下:/c/Users/<username>/projects/docker:/nakama/data.
打开终端窗口并导航到您的 Nakama 目录。例如: 要提取所有必需的图像并启动您的应用程序,请运行以下内容: 祝贺!您的 Nakama 服务器现在已启动并正在运行,可在127.0.0.1:7350上找到。 Nakama容器正在运行
使用**“在 Visual Studio 代码中打开”**按钮(或 IDE 的按钮)直接编辑您的docker-compose.yml文件。
Nakama 控制台
# 您也可以通过将浏览器导航到127.0.0.1:7351 来访问 Nakama 控制台:
提示登录时,默认凭据为admin:password 。可以通过配置文件或命令行标志更改这些凭据。
配置文件
# 您可为您的 Nakama 服务器自定义许多配置选项 。您可以为您想要设置的所有配置创建 YML 文件,并将这个文件传递到您的 Docker 容器中。
首先您需要为 Docker 提供一个本地存储卷。
使用首选文本编辑器打开您的docker-compose.yml文件。 编辑nakama:volumes:条目以指定所需的卷。例如,要在我们上面使用的desktop/nakama目录中创建一个/data文件夹,在 Docker 容器中的nakama/data上可用,如下所示: 1
2
volumes :
- ./data:/nakama/data
保存更改的文件并重新启动您的 Docker 容器,使更改生效。从您的终端: 接下来,创建您的自定义配置文件,例如my-config.yml,并将其放在上述 Docker 可用的/data文件夹中。 my-config.yml
1
2
3
4
5
6
7
8
9
10
11
12
name : nakama-node-1
data_dir : "./data/"
logger :
stdout : false
level : "warn"
file : "/nakama/data/logfile.log"
console :
port : 7351
username : "my_user"
password : "my_password"
再次打开您的docker-compose.yml文件,这一次编辑nakama:entrypoint条目以添加指向您的配置文件的--config标志。如下所示: 1
2
3
4
5
6
7
nakama :
entrypoint :
- "/bin/sh"
- "-ecx"
- >
/nakama/nakama migrate up --database.address root@cockroachdb:26257 &&
/nakama/nakama --config /nakama/data/my-config.yml
保存更改的文件并重新启动您的 Docker 容器,使更改生效。从您的终端: 后续步骤
# 现在您的 Nakama 服务器已经启动并运行了所需的配置,您可以使用首选的客户端 SDK 开始进行操作。
Related Pages