lawless/docker/nakama/Dockerfile

37 行
1.3 KiB
Docker

此文件含有模棱两可的 Unicode 字符

此文件含有可能会与其他字符混淆的 Unicode 字符。 如果您是想特意这样的,可以安全地忽略该警告。 使用 Escape 按钮显示他们。

# 《洪荒大陆》Nakama 3.x 运行时镜像
# - 使用 heroiclabs/nakama-pluginbuilder 编译 Go 插件
# - 将插件与配置文件拷贝到 heroiclabs/nakama 镜像
# -----------------------------------------------------------------------------
# 阶段 1编译 Go 插件
# -----------------------------------------------------------------------------
FROM heroiclabs/nakama-pluginbuilder:3.24.2 AS builder
ENV GO111MODULE=on
ENV CGO_ENABLED=1
WORKDIR /backend
# 项目 go.mod 使用 go 1.25 占位,builder 当前为 Go 1.23.x,降级 directive 以兼容本地构建
COPY server/go.mod server/go.sum ./
RUN sed -i 's/^go 1\.25/go 1.23/' go.mod && go mod download
# 拷贝服务端全部源码并编译为共享对象
COPY server/ ./
RUN go build --trimpath --buildmode=plugin -o honghuang-server.so .
# -----------------------------------------------------------------------------
# 阶段 2Nakama 运行时
# -----------------------------------------------------------------------------
FROM heroiclabs/nakama:3.24.2
LABEL description="Honghuang Nakama 3.24.2 with Go plugin"
# 加载洪荒大陆 Go 插件
COPY --from=builder /backend/honghuang-server.so /nakama/data/modules/
# 加载 Nakama 配置文件
COPY docker/nakama/config.yml /nakama/data/config.yml
EXPOSE 7349 7350 7351