使用Docker Compose安装Nakama
#
Docker是下载并使用Nakama开始开发的最快捷的方式。通过使用Docker,您可以:
参照本指南,您将使用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
上找到。
使用**“在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