MCServerDocker/Dockerfile

39 lines
1.6 KiB
Docker

#############################
## BUILDER ##
## Builds rcon-cli for us. ##
#############################
FROM alpine AS builder
RUN nice -20 apk update
RUN nice -20 apk upgrade
RUN nice -20 apk add go git
RUN mkdir /builder /builder/bin
RUN git clone --depth=1 https://github.com/gorcon/rcon-cli /builder/rcon-cli
WORKDIR /builder/rcon-cli
RUN nice -20 go build -ldflags "-s -w -X main.ServiceVersion=mcsd-builder" -o /builder/bin/rcon ./cmd/gorcon/main.go
####################################
## MAIN ##
## This container will be used to ##
## run a Minecraft server. ##
####################################
FROM alpine AS main
LABEL org.opencontainers.image.title="MCServerDocker"
LABEL org.opencontainers.image.description="Runs a Minecraft Server inside a Docker container."
LABEL org.opencontainers.image.authors="JeremyStarTM <jeremystartm@staropensource.de>"
LABEL org.opencontainers.image.url="https://git.staropensource.de/JeremyStarTM/MCServerDocker"
LABEL org.opencontainers.image.documentation="https://git.staropensource.de/JeremyStarTM/MCServerDocker/src/branch/develop/README.md"
LABEL org.opencontainers.image.source="https://git.staropensource.de/JeremyStarTM/MCServerDocker"
LABEL org.opencontainers.image.licenses="GPL-3.0-only"
RUN true
RUN nice -20 apk update
RUN nice -20 apk upgrade
RUN nice -20 apk add bash libstdc++ openjdk21-jre openjdk17-jre openjdk11-jre openjdk8-jre
RUN mkdir /app
ADD entrypoint.sh /app/entrypoint.sh
COPY --from=builder /builder/bin/rcon /usr/bin/rcon
STOPSIGNAL SIGTERM
EXPOSE 25565 25565/tcp
ENTRYPOINT ["bash", "/app/entrypoint.sh"]