# debian.sh --arch 'amd64' out/ 'bookworm' '@1738540800' |
RUN /bin/sh -c set -eux; apt-get update; apt-get install -y --no-install-recommends ca-certificates curl gnupg netbase sq wget ; rm -rf /var/lib/apt/lists/* # buildkit |
RUN /bin/sh -c set -eux; apt-get update; apt-get install -y --no-install-recommends git mercurial openssh-client subversion procps ; rm -rf /var/lib/apt/lists/* # buildkit |
RUN /bin/sh -c set -eux; apt-get update; apt-get install -y --no-install-recommends g++ gcc libc6-dev make pkg-config ; rm -rf /var/lib/apt/lists/* # buildkit |
ENV GOLANG_VERSION=1.23.6 |
ENV GOTOOLCHAIN=local |
ENV GOPATH=/go |
ENV PATH=/go/bin:/usr/local/go/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin |
COPY /target/ / # buildkit |
RUN /bin/sh -c mkdir -p "$GOPATH/src" "$GOPATH/bin" && chmod -R 1777 "$GOPATH" # buildkit |
WORKDIR /go |
WORKDIR /api |
RUN /bin/sh -c useradd runner -r -u 1001 -d /api # buildkit |
RUN /bin/sh -c chown -R runner:runner /api # buildkit |
USER runner |
COPY *.mod ./ # buildkit |
COPY *.sum ./ # buildkit |
RUN /bin/sh -c go mod download # buildkit |
COPY *.go ./ # buildkit |
COPY Makefile ./ # buildkit |
COPY config ./config # buildkit |
COPY database ./database # buildkit |
COPY routes ./routes # buildkit |
COPY sql ./sql # buildkit |
COPY status ./status # buildkit |
COPY util ./util # buildkit |
COPY views ./views # buildkit |
RUN /bin/sh -c make # buildkit |
ENTRYPOINT ["/api/api.elf"] |