Loading CHANGELOG.md +1 −0 Original line number Diff line number Diff line Loading @@ -14,6 +14,7 @@ The format is based on [keep a changelog](http://keepachangelog.com) and this pr - Allow Console API requests to return results above default size limit. - Developer console presence count is no longer added together across nodes. - Runtime create tournament calls always return any existing tournament after repeated calls with the same ID. - Upgrade to Go 1.13.4 and Debian buster-slim for base docker images. ### Fixed - Correctly handle errors when concurrently writing new storage objects. Loading build/Dockerfile.debian→build/Dockerfile +10 −7 Original line number Diff line number Diff line Loading @@ -4,7 +4,7 @@ ## you may not use this file except in compliance with the License. ## You may obtain a copy of the License at ## ## http:##www.apache.org/licenses/LICENSE-2.0 ## http://www.apache.org/licenses/LICENSE-2.0 ## ## Unless required by applicable law or agreed to in writing, software ## distributed under the License is distributed on an "AS IS" BASIS, Loading @@ -15,7 +15,7 @@ # docker build "$PWD" --build-arg commit="$(git rev-parse --short HEAD)" --build-arg version=v2.1.1 -t heroiclabs/nakama:2.1.1 # docker build "$PWD" --build-arg commit="$(git rev-parse --short HEAD)" --build-arg version="v2.1.1-$(git rev-parse --short HEAD)" -t heroiclabs/nakama-prerelease:"2.1.1-$(git rev-parse --short HEAD)" FROM golang:1.13.0-buster as builder FROM golang:1.13.4-buster as builder ARG commit ARG version Loading @@ -24,14 +24,17 @@ ENV GOOS linux ENV GOARCH amd64 ENV CGO_ENABLED 1 RUN git config --global advice.detachedHead false && \ git clone --quiet --no-checkout https://github.com/joshgarnett/nakama.git /go/build/nakama RUN apt-get update && \ apt-get -y upgrade && \ apt-get install -y --no-install-recommends ca-certificates gcc libc6-dev git && \ git config --global advice.detachedHead false && \ git clone --quiet --no-checkout https://github.com/heroiclabs/nakama /go/build/nakama WORKDIR /go/build/nakama RUN git checkout --quiet "$commit" && \ go build -o /go/build-out/nakama -trimpath -mod=vendor -gcflags "-trimpath $PWD" -asmflags "-trimpath $PWD" -ldflags "-s -w -X main.version=$version -X main.commitID=$commit" FROM debian:buster FROM debian:buster-slim MAINTAINER Heroic Labs <support@heroiclabs.com> Loading @@ -44,7 +47,7 @@ LABEL description="Distributed server for social and realtime games and apps." RUN mkdir -p /nakama/data/modules && \ apt-get update && \ apt-get -y upgrade && \ apt-get install -y --no-install-recommends ca-certificates curl tini && \ apt-get install -y --no-install-recommends ca-certificates tzdata curl iproute2 unzip rsync git tini && \ apt-get clean && \ rm -rf /var/lib/apt/lists/* Loading @@ -54,5 +57,5 @@ EXPOSE 7349 7350 7351 ENTRYPOINT ["/usr/bin/tini", "--", "/nakama/nakama"] HEALTHCHECK --interval=5m --timeout=3s \ HEALTHCHECK --interval=5m --timeout=10s \ CMD curl -f http://localhost:7350/ || exit 1 build/Dockerfile.alpinedeleted 100644 → 0 +0 −55 Original line number Diff line number Diff line ## Copyright 2018 The Nakama Authors ## ## Licensed under the Apache License, Version 2.0 (the "License"); ## you may not use this file except in compliance with the License. ## You may obtain a copy of the License at ## ## http:##www.apache.org/licenses/LICENSE-2.0 ## ## Unless required by applicable law or agreed to in writing, software ## distributed under the License is distributed on an "AS IS" BASIS, ## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. ## See the License for the specific language governing permissions and ## limitations under the License. # docker build "$PWD" --build-arg commit="$(git rev-parse --short HEAD)" --build-arg version=v2.1.1 -t heroiclabs/nakama:2.1.1 # docker build "$PWD" --build-arg commit="$(git rev-parse --short HEAD)" --build-arg version="v2.1.1-$(git rev-parse --short HEAD)" -t heroiclabs/nakama-prerelease:"2.1.1-$(git rev-parse --short HEAD)" FROM golang:1.13.0-alpine3.10 as builder ARG commit ARG version ENV GOOS linux ENV GOARCH amd64 ENV CGO_ENABLED 1 RUN apk --no-cache add ca-certificates gcc musl-dev git && \ git config --global advice.detachedHead false && \ git clone --quiet --no-checkout https://github.com/heroiclabs/nakama /go/build/nakama WORKDIR /go/build/nakama RUN git checkout --quiet "$commit" && \ go build -o /go/build-out/nakama -trimpath -mod=vendor -gcflags "-trimpath $PWD" -asmflags "-trimpath $PWD" -ldflags "-s -w -X main.version=$version -X main.commitID=$commit" FROM alpine:3.10 MAINTAINER Heroic Labs <support@heroiclabs.com> ARG version LABEL version=$version LABEL variant=nakama LABEL description="Distributed server for social and realtime games and apps." RUN mkdir -p /nakama/data/modules && \ apk --no-cache add ca-certificates curl iproute2 unzip rsync git tini WORKDIR /nakama/ COPY --from=builder "/go/build-out/nakama" /nakama/ EXPOSE 7349 7350 7351 ENTRYPOINT ["/sbin/tini", "--", "/nakama/nakama"] HEALTHCHECK --interval=5m --timeout=3s \ CMD curl -f http://localhost:7350/ || exit 1 build/build_docker.shdeleted 100755 → 0 +0 −51 Original line number Diff line number Diff line #!/usr/bin/env bash # Copyright 2018 The Nakama Authors. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. set -o errexit set -o pipefail VERSION="$1" COMMIT="$2" if [ -z "${VERSION}" ]; then echo "Error: no version entered. Exiting." exit 1 fi if [ -z "${COMMIT}" ]; then echo "Error: no commit entered. Exiting." exit 1 fi pushd "$(dirname "$0")" docker build . --file ./Dockerfile.alpine --no-cache --build-arg commit="${COMMIT}" \ --build-arg version="v${VERSION}-${COMMIT}" \ -t heroiclabs/nakama:"${VERSION}-alpine3.10-${COMMIT}" docker build . --file ./Dockerfile.debian --no-cache --build-arg commit="${COMMIT}" \ --build-arg version="v${VERSION}-${COMMIT}" \ -t heroiclabs/nakama:"${VERSION}-buster-${COMMIT}" popd pushd "$(dirname "$0")"/pluginbuilder docker build . --file ./Dockerfile.alpine --no-cache --build-arg commit="${COMMIT}" \ --build-arg version="v${VERSION}-${COMMIT}" \ -t heroiclabs/nakama-pluginbuilder:"${VERSION}-alpine3.10-${COMMIT}" docker build . --file ./Dockerfile.debian --no-cache --build-arg commit="${COMMIT}" \ --build-arg version="v${VERSION}-${COMMIT}" \ -t heroiclabs/nakama-pluginbuilder:"${VERSION}-buster-${COMMIT}" popd build/pluginbuilder/Dockerfile.alpine→build/pluginbuilder/Dockerfile +7 −3 Original line number Diff line number Diff line Loading @@ -4,7 +4,7 @@ ## you may not use this file except in compliance with the License. ## You may obtain a copy of the License at ## ## http:##www.apache.org/licenses/LICENSE-2.0 ## http://www.apache.org/licenses/LICENSE-2.0 ## ## Unless required by applicable law or agreed to in writing, software ## distributed under the License is distributed on an "AS IS" BASIS, Loading @@ -15,7 +15,7 @@ # docker build "$PWD" --file ./Dockerfile.pluginbuilder --build-arg commit="$(git rev-parse --short HEAD)" --build-arg version=v2.1.1 -t heroiclabs/nakama-pluginbuilder:2.1.1 # docker build "$PWD" --file ./Dockerfile.pluginbuilder --build-arg commit="$(git rev-parse --short HEAD)" --build-arg version="v2.1.1-$(git rev-parse --short HEAD)" -t heroiclabs/nakama-prerelease:"2.1.1-$(git rev-parse --short HEAD)" FROM golang:1.13.0-alpine3.10 as builder FROM golang:1.13.4-buster as builder MAINTAINER Heroic Labs <support@heroiclabs.com> Loading @@ -30,7 +30,11 @@ ENV GOOS linux ENV GOARCH amd64 ENV CGO_ENABLED 1 RUN apk --no-cache add ca-certificates gcc musl-dev git RUN apt-get update && \ apt-get -y upgrade && \ apt-get install -y --no-install-recommends ca-certificates gcc libc6-dev git && \ apt-get clean && \ rm -rf /var/lib/apt/lists/* WORKDIR /builder Loading Loading
CHANGELOG.md +1 −0 Original line number Diff line number Diff line Loading @@ -14,6 +14,7 @@ The format is based on [keep a changelog](http://keepachangelog.com) and this pr - Allow Console API requests to return results above default size limit. - Developer console presence count is no longer added together across nodes. - Runtime create tournament calls always return any existing tournament after repeated calls with the same ID. - Upgrade to Go 1.13.4 and Debian buster-slim for base docker images. ### Fixed - Correctly handle errors when concurrently writing new storage objects. Loading
build/Dockerfile.debian→build/Dockerfile +10 −7 Original line number Diff line number Diff line Loading @@ -4,7 +4,7 @@ ## you may not use this file except in compliance with the License. ## You may obtain a copy of the License at ## ## http:##www.apache.org/licenses/LICENSE-2.0 ## http://www.apache.org/licenses/LICENSE-2.0 ## ## Unless required by applicable law or agreed to in writing, software ## distributed under the License is distributed on an "AS IS" BASIS, Loading @@ -15,7 +15,7 @@ # docker build "$PWD" --build-arg commit="$(git rev-parse --short HEAD)" --build-arg version=v2.1.1 -t heroiclabs/nakama:2.1.1 # docker build "$PWD" --build-arg commit="$(git rev-parse --short HEAD)" --build-arg version="v2.1.1-$(git rev-parse --short HEAD)" -t heroiclabs/nakama-prerelease:"2.1.1-$(git rev-parse --short HEAD)" FROM golang:1.13.0-buster as builder FROM golang:1.13.4-buster as builder ARG commit ARG version Loading @@ -24,14 +24,17 @@ ENV GOOS linux ENV GOARCH amd64 ENV CGO_ENABLED 1 RUN git config --global advice.detachedHead false && \ git clone --quiet --no-checkout https://github.com/joshgarnett/nakama.git /go/build/nakama RUN apt-get update && \ apt-get -y upgrade && \ apt-get install -y --no-install-recommends ca-certificates gcc libc6-dev git && \ git config --global advice.detachedHead false && \ git clone --quiet --no-checkout https://github.com/heroiclabs/nakama /go/build/nakama WORKDIR /go/build/nakama RUN git checkout --quiet "$commit" && \ go build -o /go/build-out/nakama -trimpath -mod=vendor -gcflags "-trimpath $PWD" -asmflags "-trimpath $PWD" -ldflags "-s -w -X main.version=$version -X main.commitID=$commit" FROM debian:buster FROM debian:buster-slim MAINTAINER Heroic Labs <support@heroiclabs.com> Loading @@ -44,7 +47,7 @@ LABEL description="Distributed server for social and realtime games and apps." RUN mkdir -p /nakama/data/modules && \ apt-get update && \ apt-get -y upgrade && \ apt-get install -y --no-install-recommends ca-certificates curl tini && \ apt-get install -y --no-install-recommends ca-certificates tzdata curl iproute2 unzip rsync git tini && \ apt-get clean && \ rm -rf /var/lib/apt/lists/* Loading @@ -54,5 +57,5 @@ EXPOSE 7349 7350 7351 ENTRYPOINT ["/usr/bin/tini", "--", "/nakama/nakama"] HEALTHCHECK --interval=5m --timeout=3s \ HEALTHCHECK --interval=5m --timeout=10s \ CMD curl -f http://localhost:7350/ || exit 1
build/Dockerfile.alpinedeleted 100644 → 0 +0 −55 Original line number Diff line number Diff line ## Copyright 2018 The Nakama Authors ## ## Licensed under the Apache License, Version 2.0 (the "License"); ## you may not use this file except in compliance with the License. ## You may obtain a copy of the License at ## ## http:##www.apache.org/licenses/LICENSE-2.0 ## ## Unless required by applicable law or agreed to in writing, software ## distributed under the License is distributed on an "AS IS" BASIS, ## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. ## See the License for the specific language governing permissions and ## limitations under the License. # docker build "$PWD" --build-arg commit="$(git rev-parse --short HEAD)" --build-arg version=v2.1.1 -t heroiclabs/nakama:2.1.1 # docker build "$PWD" --build-arg commit="$(git rev-parse --short HEAD)" --build-arg version="v2.1.1-$(git rev-parse --short HEAD)" -t heroiclabs/nakama-prerelease:"2.1.1-$(git rev-parse --short HEAD)" FROM golang:1.13.0-alpine3.10 as builder ARG commit ARG version ENV GOOS linux ENV GOARCH amd64 ENV CGO_ENABLED 1 RUN apk --no-cache add ca-certificates gcc musl-dev git && \ git config --global advice.detachedHead false && \ git clone --quiet --no-checkout https://github.com/heroiclabs/nakama /go/build/nakama WORKDIR /go/build/nakama RUN git checkout --quiet "$commit" && \ go build -o /go/build-out/nakama -trimpath -mod=vendor -gcflags "-trimpath $PWD" -asmflags "-trimpath $PWD" -ldflags "-s -w -X main.version=$version -X main.commitID=$commit" FROM alpine:3.10 MAINTAINER Heroic Labs <support@heroiclabs.com> ARG version LABEL version=$version LABEL variant=nakama LABEL description="Distributed server for social and realtime games and apps." RUN mkdir -p /nakama/data/modules && \ apk --no-cache add ca-certificates curl iproute2 unzip rsync git tini WORKDIR /nakama/ COPY --from=builder "/go/build-out/nakama" /nakama/ EXPOSE 7349 7350 7351 ENTRYPOINT ["/sbin/tini", "--", "/nakama/nakama"] HEALTHCHECK --interval=5m --timeout=3s \ CMD curl -f http://localhost:7350/ || exit 1
build/build_docker.shdeleted 100755 → 0 +0 −51 Original line number Diff line number Diff line #!/usr/bin/env bash # Copyright 2018 The Nakama Authors. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. set -o errexit set -o pipefail VERSION="$1" COMMIT="$2" if [ -z "${VERSION}" ]; then echo "Error: no version entered. Exiting." exit 1 fi if [ -z "${COMMIT}" ]; then echo "Error: no commit entered. Exiting." exit 1 fi pushd "$(dirname "$0")" docker build . --file ./Dockerfile.alpine --no-cache --build-arg commit="${COMMIT}" \ --build-arg version="v${VERSION}-${COMMIT}" \ -t heroiclabs/nakama:"${VERSION}-alpine3.10-${COMMIT}" docker build . --file ./Dockerfile.debian --no-cache --build-arg commit="${COMMIT}" \ --build-arg version="v${VERSION}-${COMMIT}" \ -t heroiclabs/nakama:"${VERSION}-buster-${COMMIT}" popd pushd "$(dirname "$0")"/pluginbuilder docker build . --file ./Dockerfile.alpine --no-cache --build-arg commit="${COMMIT}" \ --build-arg version="v${VERSION}-${COMMIT}" \ -t heroiclabs/nakama-pluginbuilder:"${VERSION}-alpine3.10-${COMMIT}" docker build . --file ./Dockerfile.debian --no-cache --build-arg commit="${COMMIT}" \ --build-arg version="v${VERSION}-${COMMIT}" \ -t heroiclabs/nakama-pluginbuilder:"${VERSION}-buster-${COMMIT}" popd
build/pluginbuilder/Dockerfile.alpine→build/pluginbuilder/Dockerfile +7 −3 Original line number Diff line number Diff line Loading @@ -4,7 +4,7 @@ ## you may not use this file except in compliance with the License. ## You may obtain a copy of the License at ## ## http:##www.apache.org/licenses/LICENSE-2.0 ## http://www.apache.org/licenses/LICENSE-2.0 ## ## Unless required by applicable law or agreed to in writing, software ## distributed under the License is distributed on an "AS IS" BASIS, Loading @@ -15,7 +15,7 @@ # docker build "$PWD" --file ./Dockerfile.pluginbuilder --build-arg commit="$(git rev-parse --short HEAD)" --build-arg version=v2.1.1 -t heroiclabs/nakama-pluginbuilder:2.1.1 # docker build "$PWD" --file ./Dockerfile.pluginbuilder --build-arg commit="$(git rev-parse --short HEAD)" --build-arg version="v2.1.1-$(git rev-parse --short HEAD)" -t heroiclabs/nakama-prerelease:"2.1.1-$(git rev-parse --short HEAD)" FROM golang:1.13.0-alpine3.10 as builder FROM golang:1.13.4-buster as builder MAINTAINER Heroic Labs <support@heroiclabs.com> Loading @@ -30,7 +30,11 @@ ENV GOOS linux ENV GOARCH amd64 ENV CGO_ENABLED 1 RUN apk --no-cache add ca-certificates gcc musl-dev git RUN apt-get update && \ apt-get -y upgrade && \ apt-get install -y --no-install-recommends ca-certificates gcc libc6-dev git && \ apt-get clean && \ rm -rf /var/lib/apt/lists/* WORKDIR /builder Loading