I follow the steps in Docker Compose - Heroic Labs Documentation to run nakama in docker and get an error Failed to extract ServerMetadata from context
when access to http://127.0.0.1:7350/.
It is my docker-compose.yml
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:
The following is part of log
nakama-1 | {"level":"info","ts":"2024-09-13T17:53:55.113Z","caller":"server/runtime_lua.go:1254","msg":"Allocated minimum Lua runtime pool"}
nakama-1 | {"level":"info","ts":"2024-09-13T17:53:55.113Z","caller":"server/runtime_javascript.go:636","msg":"Initialising JavaScript runtime provider","path":"/nakama/data/modules","entrypoint":""}
nakama-1 | {"level":"info","ts":"2024-09-13T17:53:55.113Z","caller":"server/runtime_javascript.go:1738","msg":"JavaScript runtime modules loaded"}
nakama-1 | {"level":"info","ts":"2024-09-13T17:53:55.113Z","caller":"server/runtime_javascript.go:1741","msg":"Allocating minimum JavaScript runtime pool","count":16}
nakama-1 | {"level":"info","ts":"2024-09-13T17:53:55.113Z","caller":"server/runtime_javascript.go:1749","msg":"Allocated minimum JavaScript runtime pool"}
nakama-1 | {"level":"info","ts":"2024-09-13T17:53:55.113Z","caller":"server/runtime.go:678","msg":"Found runtime modules","count":0,"modules":[]}
nakama-1 | {"level":"info","ts":"2024-09-13T17:53:55.113Z","caller":"server/leaderboard_scheduler.go:109","msg":"Leaderboard scheduler start"}
nakama-1 | {"level":"info","ts":"2024-09-13T17:53:55.113Z","caller":"server/leaderboard_scheduler.go:304","msg":"Leaderboard scheduler update","end_active":"-1ns","end_active_count":0,"expiry":"-1ns","expiry_count":0}
nakama-1 | {"level":"info","ts":"2024-09-13T17:53:55.113Z","caller":"server/api.go:138","msg":"Starting API server for gRPC requests","port":7349}
nakama-1 | {"level":"info","ts":"2024-09-13T17:53:55.113Z","caller":"server/api.go:289","msg":"Starting API server gateway for HTTP requests","port":7350}
nakama-1 | {"level":"info","ts":"2024-09-13T17:53:55.115Z","caller":"server/console.go:220","msg":"Starting Console server for gRPC requests","port":7348}
nakama-1 | {"level":"info","ts":"2024-09-13T17:53:55.116Z","caller":"server/console.go:324","msg":"Starting Console server gateway for HTTP requests","port":7351}
nakama-1 | {"level":"info","ts":"2024-09-13T17:53:55.209Z","caller":"main.go:229","msg":"Startup done"}
nakama-1 | 2024/09/13 17:54:13 ERROR: Failed to extract ServerMetadata from context
Versions: Nakama 3.22.0, Docker