# The first stage just builds up the modpack FROM alpine:latest AS build # Args ARG MINECRAFT_VERSION="1.16.5" ARG FORGE_VERSION="36.2.26" ARG JRE_VERSION="openjdk8-jre" # The actual setup work COPY start-server.sh /minecraft/start-server.sh WORKDIR /minecraft RUN apk add curl "${JRE_VERSION}" &&\ curl -L "https://files.minecraftforge.net/maven/net/minecraftforge/forge/${MINECRAFT_VERSION}-${FORGE_VERSION}/forge-${MINECRAFT_VERSION}-${FORGE_VERSION}-installer.jar" -o installer.jar &&\ java -jar installer.jar --installServer &&\ echo "eula=true" > eula.txt &&\ rm installer.jar installer.jar.log && \ ln -s "forge-${MINECRAFT_VERSION}-${FORGE_VERSION}.jar" server.jar # The second stage is the actual container FROM openjdk:11 RUN apt-get update && apt-get install rsync screen -y WORKDIR /minecraft COPY --from=build /minecraft . CMD [ "bash", "start-server.sh" ] EXPOSE 25565