37 行
1.4 KiB
Docker
37 行
1.4 KiB
Docker
# 《洪荒大陆》Nakama 3.x 运行时镜像
|
||
# - 使用 heroiclabs/nakama-pluginbuilder 编译 Go 插件
|
||
# - 将插件与配置文件拷贝到 heroiclabs/nakama 镜像
|
||
|
||
# -----------------------------------------------------------------------------
|
||
# 阶段 1:编译 Go 插件
|
||
# -----------------------------------------------------------------------------
|
||
FROM swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/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 .
|
||
|
||
# -----------------------------------------------------------------------------
|
||
# 阶段 2:Nakama 运行时
|
||
# -----------------------------------------------------------------------------
|
||
FROM swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/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
|